[QPID-5852]: connection.opened() returns True after unsuccessful connection (fixing regression infested by previous commit)
diff --git a/qpid/messaging/endpoints.py b/qpid/messaging/endpoints.py
index 300e0fd..50320b8 100644
--- a/qpid/messaging/endpoints.py
+++ b/qpid/messaging/endpoints.py
@@ -222,7 +222,8 @@
           self.error = None
           raise e
 
-      self.close()
+      if not self._unlinked():
+          self.close()
       raise e
 
   def get_error(self):