Rev 11: Handle failed startup more gracefully. in http://people.ubuntu.com/~robertc/baz2.0/plugins/avahi/trunk

Robert Collins robertc at robertcollins.net
Fri Jul 6 05:32:38 BST 2007


At http://people.ubuntu.com/~robertc/baz2.0/plugins/avahi/trunk

------------------------------------------------------------
revno: 11
revision-id: robertc at robertcollins.net-20070706043238-wqnwtntel2hgeai9
parent: robertc at robertcollins.net-20070705074852-a2qqmkb8j2he7l1c
committer: Robert Collins <robertc at robertcollins.net>
branch nick: trunk
timestamp: Fri 2007-07-06 14:32:38 +1000
message:
  Handle failed startup more gracefully.
modified:
  share.py                       share.py-20070323082617-ua0xkev3o590n4rm-1
=== modified file 'share.py'
--- a/share.py	2007-07-05 07:48:52 +0000
+++ b/share.py	2007-07-06 04:32:38 +0000
@@ -108,7 +108,7 @@
         self.host = host
         self.port = port
         self.domain = ''
-        self.server = None
+        self.smart_server = None
         self.branches = []
 
     def run(self):
@@ -119,15 +119,17 @@
         self.main.run()
 
     def close(self):
-        # copied from bzrlib.smart.server as its not factored well enough
-        # to reuse yet. FIX THAT - rbc 20070705
-        backing_urls = [self.smart_server.backing_transport.base]
-        try:
-            backing_urls.append(self.smart_server.backing_transport.external_url())
-        except errors.InProcessTransport:
-            pass
-        for hook in server.SmartTCPServer.hooks['server_stopped']:
-            hook(backing_urls, self.smart_server.get_url())
+        if self.smart_server:
+            # copied from bzrlib.smart.server as its not factored well enough
+            # to reuse yet. FIX THAT - rbc 20070705
+            backing_urls = [self.smart_server.backing_transport.base]
+            try:
+                backing_urls.append(self.smart_server.backing_transport.external_url())
+            except errors.InProcessTransport:
+                pass
+            for hook in server.SmartTCPServer.hooks['server_stopped']:
+                hook(backing_urls, self.smart_server.get_url())
+            self.smart_server = None
         for branch in self.branches:
             branch.close()
 



More information about the bazaar-commits mailing list