X-Git-Url: http://git.kaliko.me/?p=python-musicpd.git;a=blobdiff_plain;f=mpd.py;h=b87891b8b93e9be559d26ac39c85f44c4ac56888;hp=5e50295df30acb0523d84f5fedd5dfe77048310e;hb=46753bf1c1e917dee5ba9ced19fbf1f6a9c103ca;hpb=5db30b98502c9bb46d95ce8797fcbcfa7058bfcc diff --git a/mpd.py b/mpd.py index 5e50295..b87891b 100644 --- a/mpd.py +++ b/mpd.py @@ -364,23 +364,23 @@ class MPDClient(object): flags = socket.AI_ADDRCONFIG except AttributeError: flags = 0 - msg = "getaddrinfo returns an empty list" + err = None for res in socket.getaddrinfo(host, port, socket.AF_UNSPEC, socket.SOCK_STREAM, socket.IPPROTO_TCP, flags): af, socktype, proto, canonname, sa = res + sock = None try: sock = socket.socket(af, socktype, proto) sock.connect(sa) - except socket.error, msg: - if sock: + return sock + except socket.error, err: + if sock is not None: sock.close() - sock = None - continue - break - if not sock: - raise socket.error(msg) - return sock + if err is not None: + raise err + else: + raise ConnectionError("getaddrinfo returns an empty list") def connect(self, host, port): if self._sock: