/F observes that we need an else: in connect()
diff --git a/Lib/asyncore.py b/Lib/asyncore.py
index 684e5d2..5740fe1 100644
--- a/Lib/asyncore.py
+++ b/Lib/asyncore.py
@@ -308,7 +308,8 @@
             self.addr = address
             self.connected = 1
             self.handle_connect()
-        raise socket.error, err
+        else:
+            raise socket.error, err
 
     def accept (self):
         try: