X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sface%2Fsfiprocess.py;h=92c420bcdf6cd0a63f29836ce2ef2ee2210b66a0;hb=eba29cd265f907a7e8ef2d23c2a6c47269c4ff15;hp=38fb12bc9011f11b41d88b81a91883bb71aa75f0;hpb=622bf37d1ff35486e7863ba77fe7683b12fb12d1;p=sface.git diff --git a/sface/sfiprocess.py b/sface/sfiprocess.py index 38fb12b..92c420b 100644 --- a/sface/sfiprocess.py +++ b/sface/sfiprocess.py @@ -23,6 +23,7 @@ class SfiProcess(QObject): self.process = QProcess() self.connect(self.process, SIGNAL("finished(int, QProcess::ExitStatus)"), self.processFinished) + self.connect(self.process, SIGNAL("readyReadStandardOutput()"), self.processStandardOutput) self.connect(self.process, SIGNAL("readyReadStandardError()"), @@ -41,9 +42,11 @@ class SfiProcess(QObject): return self.process.state() != QProcess.NotRunning def processStandardOutput(self): - output = self.process.readAllStandardOutput() - if self.debug: - print output + # NOTE: The signal readyReadStandardOutput is emitted when + # the process has made new data available through its standard output channel. + # But the process is not necessarily finished. + if config.debug: + print self.process.readAllStandardOutput() def processStandardError(self): print self.process.readAllStandardError() @@ -124,3 +127,4 @@ class SfiProcess(QObject): if config.verbose: command = "%s %s" % (self.exe, self.args.join(" ")) print time.strftime('%M:%S'),"[%.3f s]"%(time.time()-self._trace),command,'Done' +