Skip to content

Commit ee92d0d

Browse files
committed
modified connectToPort to prevent crash in Windows and OSX
1 parent e86be68 commit ee92d0d

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

PSL/packet_handler.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -62,14 +62,16 @@ def listPorts(self):
6262
return glob.glob('/dev/ttyACM*') + glob.glob('/dev/ttyUSB*')
6363

6464
def connectToPort(self, portname):
65-
import socket
66-
try:
67-
self.blockingSocket = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
68-
self.blockingSocket.bind('\0PSghhhLab%s' % portname)
69-
self.blockingSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
70-
except socket.error as e:
71-
self.occupiedPorts.add(portname)
72-
raise RuntimeError("Another program is using %s (%d)" % (portname))
65+
import platform
66+
if platform.system() not in ["Windows", "Darwin"]:
67+
import socket
68+
try:
69+
self.blockingSocket = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
70+
self.blockingSocket.bind('\0PSghhhLab%s' % portname)
71+
self.blockingSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
72+
except socket.error as e:
73+
self.occupiedPorts.add(portname)
74+
raise RuntimeError("Another program is using %s (%d)" % (portname))
7375

7476
fd = serial.Serial(portname, 9600, stopbits=1, timeout=0.02)
7577
fd.read(100)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy