summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a>2009-07-21 21:12:37 +0000
committercliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a>2009-07-21 21:12:37 +0000
commitf0a4f0f50d9750d9de488f9fbc2aaa8b60cbf42a (patch)
tree4d761c7626bf213a373a7e86cee00deacaa3ca40
parent7fa1a9ca41ef0f2b59e3d814213a510a7527ef9a (diff)
downloadpyserial-git-f0a4f0f50d9750d9de488f9fbc2aaa8b60cbf42a.tar.gz
fix test failure (test_advanced.py)
-rw-r--r--pyserial/serial/serialposix.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/pyserial/serial/serialposix.py b/pyserial/serial/serialposix.py
index a516412..8d11865 100644
--- a/pyserial/serial/serialposix.py
+++ b/pyserial/serial/serialposix.py
@@ -185,6 +185,7 @@ class Serial(SerialBase):
except:
os.close(self.fd)
self.fd = None
+ raise
else:
self._isOpen = True
#~ self.flushInput()
@@ -219,7 +220,7 @@ class Serial(SerialBase):
if hasattr(TERMIOS, 'PARMRK'):
iflag &= ~TERMIOS.PARMRK
- # setup baudrate
+ # setup baud rate
try:
ispeed = ospeed = getattr(TERMIOS,'B%s' % (self._baudrate))
except AttributeError:
@@ -227,9 +228,15 @@ class Serial(SerialBase):
ispeed = ospeed = baudrate_constants[self._baudrate]
except KeyError:
#~ raise ValueError('Invalid baud rate: %r' % self._baudrate)
- # may need custom baud rate, it isnt in our list.
+ # may need custom baud rate, it isn't in our list.
ispeed = ospeed = getattr(TERMIOS, 'B38400')
- custom_baud = int(self._baudrate) # store for later
+ try:
+ custom_baud = int(self._baudrate) # store for later
+ except ValueError:
+ raise ValueError('Invalid baud rate: %r' % self._baudrate)
+ else:
+ if custom_baud < 0:
+ raise ValueError('Invalid baud rate: %r' % self._baudrate)
# setup char len
cflag &= ~TERMIOS.CSIZE