diff --git a/lib/server/socket.js b/lib/server/socket.js index 8d54e10d..a489e5fc 100644 --- a/lib/server/socket.js +++ b/lib/server/socket.js @@ -240,26 +240,31 @@ pCommand = args.shift(); spawn = main.child_process.spawn; - cmd = spawn(pCommand, args, options); - send = function(data, isError) { - var lExec = {}, - msg = data.toString(); - - if (isError) - lExec.stderr = msg; - else - lExec.stdout = msg; - - Util.exec(callback, lExec); - }; - - cmd.stdout.on('data', send); - - cmd.stderr.on('data', function(data) { - send(data, true); + Util.tryCatchLog(function() { + cmd = spawn(pCommand, args, options); }); - cmd.on('error', Util.retFalse); + if (cmd) { + send = function(data, isError) { + var lExec = {}, + msg = data.toString(); + + if (isError) + lExec.stderr = msg; + else + lExec.stdout = msg; + + Util.exec(callback, lExec); + }; + + cmd.stdout.on('data', send); + + cmd.stderr.on('data', function(data) { + send(data, true); + }); + + cmd.on('error', Util.retFalse); + } } function onCloudCmd(pCommand, callback) {