Closed
Description
Hi,
When i spawn a process and write in his stdin he will not trigger "close" or "exit" event.
emuObject.currentProcess = spawn(externalCommands[cmd], cmdArgs, {cwd:emuObject.cd});
emuObject.stdin.pipe(emuObject.currentProcess.stdin);
emuObject.currentProcess.stdout.on('data', function(data){
self.emit('createOutput', emuObject, data.toString());
});
emuObject.currentProcess.stderr.on('data', function(data){
self.emit('createError', emuObject, data.toString());
});
emuObject.currentProcess.on('exit', function(code, signal){
console.log('exited process');
});
emuObject.currentProcess.on('close', function(code, signal){
console.log('closed process');
if(code == 0){
emuObject.currentProcess = null;
self.emit('createLine', emuObject, emuObject.cd);
}
else{
emuObject.currentProcess = null;
self.emit('createLine', emuObject, emuObject.cd);
self.emit('killEmu', emuObject, true);
}
});
i tried:
emuObject.currentProcess.stdin.resume();
emuObject.currentProcess.stdin.write(cmd + '\n');
emuObject.currentProcess.stdin.pause();
but it does nothing
I tried too
emuObject.currentProcess.stdin.write(cmd + '\n');
emuObject.currentProcess.stdin.end();
but it end the child process instantly.
Just in case it can have something to do with this issue, i'm using nw.js
Any idea?