diff --git a/exec/dorkit/jsexec_console.js b/exec/dorkit/jsexec_console.js index fe8f65c658e077fd564d63ae89c7e78412b01f3e..3fb9c00ec4a290b31711430f202a492029789daa 100644 --- a/exec/dorkit/jsexec_console.js +++ b/exec/dorkit/jsexec_console.js @@ -1,8 +1,7 @@ load("ansi_console.js"); dk.console.remote_io.print = function(string) { - stdout.write(string); - stdout.flush(); + stdout.raw_write(string); }; var jsexec_input_queue = load(true, "jsexec_input.js"); diff --git a/exec/dorkit/jsexec_input.js b/exec/dorkit/jsexec_input.js index 2b7d549037f57ff6157951d22a8dfa724e51b9b8..940f0568ec238198713e31bb3fedb18911eea19a 100644 --- a/exec/dorkit/jsexec_input.js +++ b/exec/dorkit/jsexec_input.js @@ -7,6 +7,13 @@ var k; while(!js.terminated) { if (parent_queue.poll(0)) break; - k = stdin.read(1); + if (system.platform == 'Win32') + k = stdin.raw_read(1); + else { + if (socket_select([stdin.descriptor], 0.1).length == 1) + k = stdin.raw_read(1); + else + k = undefined; + } ai.add(k); }