fix merge between onelab and princeton repositories
authorroot <root@cassidy.cs.princeton.edu>
Mon, 29 Nov 2010 17:41:56 +0000 (12:41 -0500)
committerroot <root@cassidy.cs.princeton.edu>
Mon, 29 Nov 2010 17:41:56 +0000 (12:41 -0500)
TODO
sface-run
sface.spec
sface/sfiprocess.py

diff --git a/TODO b/TODO
index 57f186d..40d139a 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,4 +1,3 @@
-
 * Better error handling in SfiProcess
 * Support for private keys with passwords
 * XML modifiable by the user
\ No newline at end of file
index eecabd2..48650dc 100755 (executable)
--- a/sface-run
+++ b/sface-run
@@ -3,9 +3,8 @@
 import os
 import sys
 from optparse import OptionParser
-from PyQt4.QtGui import *
 
-sys.path.append(".")
+sys.path.insert(0, ".")
 exe = os.path.abspath(sys.argv[0])
 
 def using_env(e):
@@ -40,13 +39,14 @@ if sys.platform == "darwin":
     os.environ["PATH"] = PATH
     os.environ["DYLD_LIBRARY_PATH"] = DYLD_LIBRARY_PATH
     os.environ["DYLD_FRAMEWORK_PATH"] = DYLD_FRAMEWORK_PATH
-    if os.path.exists(RESOURCES):  sys.path.append(RESOURCES)
-    if os.path.exists(FRAMEWORKS): sys.path.append(FRAMEWORKS)
+    if os.path.exists(RESOURCES):  sys.path.insert(0, RESOURCES)
+    if os.path.exists(FRAMEWORKS): sys.path.insert(0, FRAMEWORKS)
 
 elif sys.platform == "linux2":
     sys.path.extend(["/usr/share", "/usr/share/sface"])
 
 
+from PyQt4.QtGui import *
 from sface.mainwindow import MainWindow
 from sface.config import config
 
index 2905cb3..8c4bdbe 100644 (file)
@@ -8,7 +8,7 @@
 
 %define name sface
 %define version 0.1
-%define taglevel 2
+%define taglevel 3
 
 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
 
@@ -61,6 +61,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/sface/*
 
 %changelog
+* Thu Oct 14 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - sface-0.1-3
+- sface-0.1-3, with improvement on process output.
+
 * Mon Sep 27 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sface-0.1-2
 - initial version with rpm packaging
 
index 1e93b29..8bb6627 100644 (file)
@@ -21,7 +21,10 @@ class SfiProcess(QObject):
     def __init__(self, parent=None):
         QObject.__init__(self, parent)
 
+        env = QProcess.systemEnvironment()
+        env << "PYTHONPATH=%s" % ":".join(sys.path)
         self.process = QProcess()
+        self.process.setEnvironment(env)
         self.connect(self.process, SIGNAL("finished(int, QProcess::ExitStatus)"),
                      self.processFinished)
         
@@ -51,15 +54,9 @@ class SfiProcess(QObject):
         return self.process.state() != QProcess.NotRunning
 
     def processStandardOutput(self):
-        # 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.
-        # It's cool to have this method wo we print the stdOut live,
-        # but we must be carefull with self.output, used by XmlrpcTracker too.
-        tmpOut = self.process.readAllStandardOutput()
+        output = self.process.readAllStandardOutput()
         if config.debug:
-            print tmpOut        
-        self.output += tmpOut
+            print output
 
     def processStandardError(self):
         print self.process.readAllStandardError()