[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [flashproxy/master] Start the registration thread only after background forking.



commit e4bccbfe468dc32302bdbdab91ad7ddee79af151
Author: David Fifield <david@xxxxxxxxxxxxxxx>
Date:   Sun Sep 23 23:03:57 2012 -0700

    Start the registration thread only after background forking.
    
    I don't know the exact cause, but something was causing the registration
    thread to hand at the subprocess.Popen call, but only when the program
    was run with the --daemon option, which causes it to fork at startup.
    Starting the thread after the fork seems to make the problem go away. It
    might be this bugs I found while searching:
    	http://bugs.python.org/issue13817
---
 flashproxy-client |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/flashproxy-client b/flashproxy-client
index 746f5eb..efdfafe 100755
--- a/flashproxy-client
+++ b/flashproxy-client
@@ -980,12 +980,6 @@ if __name__ == "__main__":
     # Locals not yet linked with a remote. This is a subset of remotes.
     unlinked_locals = []
 
-    if options.register:
-        registration_thread = threading.Thread(target=registration_thread_func, name="register")
-        registration_thread.daemon = True
-        registration_thread.start()
-        register()
-
     if options.daemonize:
         log(u"Daemonizing.")
         pid = os.fork()
@@ -995,6 +989,13 @@ if __name__ == "__main__":
                 print >> f, pid
                 f.close()
             sys.exit(0)
+
+    if options.register:
+        registration_thread = threading.Thread(target=registration_thread_func, name="register")
+        registration_thread.daemon = True
+        registration_thread.start()
+        register()
+
     try:
         main()
     except Exception:



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits