Author: jerome
Date: 2009-12-31 14:23:19 +0100 (Thu, 31 Dec 2009)
New Revision: 6026

Modified:
   
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/connector.py
   
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/plugin-skype.py
   
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/utils.py
Log:
* Fixed a memory leak.

Modified: 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/connector.py
===================================================================
--- 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/connector.py
      2009-12-30 18:32:30 UTC (rev 6025)
+++ 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/connector.py
      2009-12-31 13:23:19 UTC (rev 6026)
@@ -154,14 +154,16 @@
             self.__startedMutex.release()
             self.__onSkypeClosed__()
         else:
-            self.__startedMutex.acquire()
+            
             if not self.__started:
                 #Skype started event.
+                self.__startedMutex.acquire()
+                self.__started = True
+                self.__startedMutex.release()
                 if self.OnSkypeStarted != None:
                     thread = threading.Thread(target=self.OnSkypeStarted)
                     thread.start()
-                    self.__started = True
-            self.__startedMutex.release()
+         
             
     # 
--------------------------------------------------------------------------
     # Skype api Event handler, notify of new available API status. 
@@ -303,5 +305,5 @@
     def AttachAPI(self):
         '''Attach Skype api.
         '''
-        self.__connect_all__()
+        self.__connect_api__()
         

Modified: 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/plugin-skype.py
===================================================================
--- 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/plugin-skype.py
   2009-12-30 18:32:30 UTC (rev 6025)
+++ 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/plugin-skype.py
   2009-12-31 13:23:19 UTC (rev 6026)
@@ -102,6 +102,9 @@
     #plugin uuid
     uuid = "8349ed52-572d-4c3f-a7b8-f6d4a5ae2c0"
     
+    client = None
+    serv = None
+    
     port = 270
     #Skype client - api objects.
     synchronious  = None
@@ -109,6 +112,7 @@
     connectorObj  = None
     
     mutex = threading.Lock()
+    startMutex = threading.Lock()
     
     #Used for run command only.
     command = ""
@@ -191,7 +195,6 @@
     def onPluginEvent(self, eventName, eventValues):
         '''Callback on plugin event.
         '''
-        self.throwTrace(eventValues[0])
         #Start the adequate function for each plugin command.
         if not self.getCommand() == 'run':
             return
@@ -363,7 +366,7 @@
         '''
         Skype closure detected.
         '''
-        if self.serv.hasClient():
+        if ( self.serv != None ) and self.serv.hasClient():
             self.serv.notify(END)
     
     
@@ -371,19 +374,23 @@
         '''
         Skyped started event.
         '''
-        self.throwTrace("skype was started")
-        mutex = threading.Lock()
+        if self.startMutex.locked():
+            return
+
+        self.startMutex.acquire()
         self.initialized = False
         while not self.initialized:
-            if self.command is None:
+            if ( self.command is None ) or ( not 
self.connectorObj.isClientRunning() ):
                 self.command = ""
+                if self.startMutex.locked():
+                    self.startMutex.release()
                 break
-                
-            mutex.acquire()
-            time.sleep(4)
+            
+            time.sleep(3.0)
             self.connectorObj.OnAPIReady = self.initializeDaemon
             self.connectorObj.AttachAPI()
-            mutex.release()
+        if self.startMutex.locked():
+            self.startMutex.release()
         
       
         

Modified: 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/utils.py
===================================================================
--- 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/utils.py
  2009-12-30 18:32:30 UTC (rev 6025)
+++ 
software_suite_v3/software/plugin/plugin-skype/branches/in_out_plugin/executables/utils.py
  2009-12-31 13:23:19 UTC (rev 6026)
@@ -250,7 +250,7 @@
             #Excetute attached function while stop is not call.
             if ( self.targetFunct != None ):
                 self.targetFunct()
-                sleep(1.0)
+                sleep(1.5)
             else:
                 break
     


------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to