rpms/sectool/F-12 sectool-0.9.4-policykit-fix.patch,NONE,1.1

Maros Barabas mbarabas at fedoraproject.org
Wed Mar 10 09:46:13 UTC 2010


Author: mbarabas

Update of /cvs/pkgs/rpms/sectool/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21802

Added Files:
	sectool-0.9.4-policykit-fix.patch 
Log Message:
Added missing PolicyKit patch

sectool-0.9.4-policykit-fix.patch:
 sectool-gui.py |   36 ++++++++++++++++++++++++++++--------
 1 file changed, 28 insertions(+), 8 deletions(-)

--- NEW FILE sectool-0.9.4-policykit-fix.patch ---
diff -up sectool-0.9.4/src/sectool-gui.py.old sectool-0.9.4/src/sectool-gui.py
--- sectool-0.9.4/src/sectool-gui.py.old	2009-12-08 17:11:31.417357216 +0100
+++ sectool-0.9.4/src/sectool-gui.py	2010-01-13 14:37:49.817461379 +0100
@@ -645,7 +645,7 @@ class TestHandler( Handler ): 
         """ Stop button has been pressed """
         
         self.threadHandler.stop() #: give a short amount of time to stop the test by itself
-        self.__signalHandler.kill_thread() #: kill the test by unix-style kill through os library
+        #self.__signalHandler.kill_thread() #: kill the test by unix-style kill through os library
 
     def show_message_hint( self, test, msg_id ):
         """ Show info message in hintWindow """
@@ -721,6 +721,16 @@ class DBusCaller(object):
         """ Get action from dbus sectool mechanism """
         return self.dbus_action_object.get_dbus_method( action, "org.fedoraproject.sectool.mechanism" )
 
+    @staticmethod
+    def error_handler(error):
+	#print "ERROR: ", error
+	pass # We will recieve an error that timeout has expired
+
+    @staticmethod
+    def reply_handler():
+	#print "REPLY done."
+	pass
+
     def call(self, *p, **k):
         self.bus.call_async(*p, **k)
 
@@ -728,13 +738,23 @@ class DBusCaller(object):
         self.bus.flush()
         self.bus.close()
 
+    def run( self, args, file ):
+
+        auth = slip.dbus.polkit.IsSystemBusNameAuthorized( self.bus.get_unique_name(), "org.fedoraproject.sectool.runtests" )
+	self.runtests(args, file)
+
     @slip.dbus.polkit.enable_proxy
     def runtests( self, args, file ):
 
-        auth = slip.dbus.polkit.IsSystemBusNameAuthorized( self.bus.get_unique_name(), "org.fedoraproject.sectool.runtests" )
-        if auth == "yes": self.timeout = 0.00
-        self.dbus_action_object.runtests( args, file, timeout=self.timeout, dbus_interface = "org.fedoraproject.sectool.mechanism" )
-        #dbus_action( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file, timeout=0.00 )
+	self.bus.call_async("org.fedoraproject.sectool.mechanism", 
+                            "/org/fedoraproject/sectool/object", 
+                            "org.fedoraproject.sectool.mechanism", 
+                            "runtests", 
+                            "ass", 
+                            [args, file], 
+                            reply_handler=self.reply_handler, 
+                            error_handler=self.error_handler, 
+                            timeout=0.00)
 
 
 class ThreadHandler(threading.Thread, Handler):
@@ -867,7 +887,7 @@ class ThreadHandler(threading.Thread, Ha
                     If you use timeout=-1, it will be sequencial, all positives numbers are seconds in float
                     """
 
-                    bus.runtests( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file )
+                    bus.run( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file )
                     #bus.call( test.dsc["HEADER"]["NAME"], file )
                 except dbus.DBusException, e:
                     # This should always happend. We need to be stopped by dBus to start new test in separate thread
@@ -889,8 +909,6 @@ class ThreadHandler(threading.Thread, Ha
 
         while self.done < count:
             if self.__stopthread.isSet(): 
-                for reader in self.readers:
-                    reader.stop_thread()
                 #self.__formatter.stopProgressBar()
                 break
             time.sleep(2)
@@ -921,6 +939,8 @@ class ThreadHandler(threading.Thread, Ha
          The testing process is going to die .. we have a little time to stop all tests correctly
          """
          self.__stopthread.set( ) 
+	 for reader in self.readers:
+	     reader.stop_thread()
 
     def __make_tmp_file( self ):
         """ 



More information about the scm-commits mailing list