diff --git a/lib/client/view.js b/lib/client/view.js index 21db9410..cd824045 100644 --- a/lib/client/view.js +++ b/lib/client/view.js @@ -39,10 +39,17 @@ var CloudCmd, Util, DOM, CloudFunc, $; }; this.init = function(pCallBack){ - var lFunc, lIsFunc = Util.isFunction(pCallBack); + var lFunc, lIsFunc, lIsCallBack; + + if (pCallBack){ + lIsFunc = Util.isFunction(pCallBack); + lIsCallBack = Util.isFunction(pCallBack.callback); + } if (lIsFunc) lFunc = pCallBack; + else if (lIsCallBack) + lFunc = pCallBack.callback; Util.loadOnLoad([ lFunc || Util.retExec(View.show, null), diff --git a/lib/server/rest.js b/lib/server/rest.js index 77db4e65..368def86 100644 --- a/lib/server/rest.js +++ b/lib/server/rest.js @@ -143,13 +143,14 @@ else { lWriteStream = fs.createWriteStream(p.name); - lError = function(pError){ + lError = function(pError) { main.sendError(pParams, pError); }; - lWriteStream.on ('error', lError); + lWriteStream.on('error', lError); p.request.on('error', lError); - p.request.on('end', function(){ + + lWriteStream.on('open', function() { var lName = path.basename(p.name); main.sendResponse(pParams, 'save: ok("' + lName +'")'); });