From 0538dd80c83657a2e4c5e1d6501fcf39b87368e2 Mon Sep 17 00:00:00 2001 From: Josh Wilsdon Date: Fri, 30 Nov 2012 01:34:08 -0800 Subject: [PATCH] OS-1732 don't assume vmobj.zpool is set and use vmobj.zonepath instead when available. --- src/vm/node_modules/VM.js | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/vm/node_modules/VM.js b/src/vm/node_modules/VM.js index 55934509a..39e2f2d60 100644 --- a/src/vm/node_modules/VM.js +++ b/src/vm/node_modules/VM.js @@ -2860,9 +2860,19 @@ function updateMetadata(vmobj, payload, callback) var imdata = {}; var cmdata = {}; var tags = {}; - var zonepath = vmobj.zonepath = '/' - + vmobj.zpool + '/' - + vmobj.zonename; + var zonepath; + + if (vmobj.hasOwnProperty('zonepath')) { + zonepath = vmobj.zonepath; + } else if (vmobj.hasOwnProperty('zpool') + && vmobj.hasOwnProperty('zonename')) { + + zonepath = '/' + vmobj.zpool + '/' + vmobj.zonename; + } else { + callback(new Error('unable to find zonepath for ' + + JSON.stringify(vmobj))); + return; + } // paths are under zonepath but not zoneroot mdata_filename = zonepath + '/config/metadata.json';