pike.git / lib / modules / Process.pmod

version» Context lines:

pike.git/lib/modules/Process.pmod:217: Inside #if constant(Thread.Thread)
  #if constant(Thread.Thread)    array threads = ({    thread_create( lambda() { gotstdout = mystdout->read(); } ),    thread_create( lambda() { gotstderr = mystderr->read(); } )    });       if (mystdin) {    threads += ({    thread_create(lambda() { mystdin->write(stdin_str); } )    }); +  mystdin = 0;    }       exitcode = p->wait();    threads->wait();   #else //No threads, use callbacks    mystdout->set_read_callback( lambda( mixed i, string data) {    gotstdout += data;    } );    mystderr->set_read_callback( lambda( mixed i, string data) {    gotstderr += data;    } );       if (mystdin) {    Shuffler.Shuffle sf = Shuffler.Shuffler()->shuffle( mystdin );    sf->add_source(stdin_str);    sf->start(); -  +  mystdin = 0;    }       while( !p->status() || p->status() == 1 )    Pike.DefaultBackend( 1.0 );       mystdout->set_read_callback(0);    mystderr->set_read_callback(0);       gotstdout += mystdout->read();    gotstderr += mystderr->read();