// print("prop: " + prop);
var _this = this;
string str_return;
-
+
//print(JSON.stringify(ch, null,4));
while (true) {
-
+ string buffer;
+ size_t term_pos;
+ size_t len;
+ IOStatus status;
try {
- var status = ch.read_line( buffer, term_pos );
- catch (Error e) {
+ status = ch.read_line( out buffer, out len, out term_pos );
+ } catch (Error e) {
//FIXme
break; // ??
case GLib.IOStatus.NORMAL:
//write(fn, x.str);
- if (this.listeners[prop]) {
- this.listeners[prop].call(this, x.str_return);
+ //if (this.listeners[prop]) {
+ // this.listeners[prop].call(this, x.str_return);
+ //}
+ if (ch == this.out_ch) {
+ this.output += buffer;
+ } else {
+ this.stderr += buffer;
}
- _this[prop] += x.str_return;
+ //_this[prop] += x.str_return;
if (_this.debug) {
- print(prop + ':' + x.str_return.replace(/\n/, ''));
+ stdout.print("%s : %s", prop , str_return);
}
if (this.async) {
try {
- if (imports.gi.Gtk.events_pending()) {
- imports.gi.Gtk.main_iteration();
+ if ( Gtk.events_pending()) {
+ Gtk.main_iteration();
}
} catch(Error e) {