diff options
author | cliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a> | 2009-09-10 15:07:44 +0000 |
---|---|---|
committer | cliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a> | 2009-09-10 15:07:44 +0000 |
commit | f54f5f5823fce14e88998a6ce1ce80cbc2486e88 (patch) | |
tree | 272406c52b7f05881387b84117c3d1225c5ae420 /examples | |
parent | 520b81e04d7c0140f43b205a9bc31727c07fd152 (diff) | |
download | pyserial-f54f5f5823fce14e88998a6ce1ce80cbc2486e88.tar.gz |
- improve cleanup on exit in case of errors
- keep running in case of errors
git-svn-id: http://svn.code.sf.net/p/pyserial/code/trunk/pyserial@346 f19166aa-fa4f-0410-85c2-fa1106f25c8a
Diffstat (limited to 'examples')
-rw-r--r-- | examples/port_publisher.py | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/examples/port_publisher.py b/examples/port_publisher.py index 1e9c9a3..91de063 100644 --- a/examples/port_publisher.py +++ b/examples/port_publisher.py @@ -277,20 +277,22 @@ class Forwarder(ZeroconfService): def handle_disconnect(self):
"""Socket gets disconnected"""
# signal disconnected terminal with control lines
- self.serial.setRTS(False)
- self.serial.setDTR(False)
- # restore original port configuration in case it was changed
- self.serial.applySettingsDict(self.serial_settings_backup)
- # stop RFC 2217 state machine
- self.rfc2217 = None
- # clear send buffer
- self.buffer_ser2net = ''
- # close network connection
- if self.socket is not None:
- self.socket.close()
- self.socket = None
- if not options.quiet:
- print '%s: Disconnected' % self.device
+ try:
+ self.serial.setRTS(False)
+ self.serial.setDTR(False)
+ finally:
+ # restore original port configuration in case it was changed
+ self.serial.applySettingsDict(self.serial_settings_backup)
+ # stop RFC 2217 state machine
+ self.rfc2217 = None
+ # clear send buffer
+ self.buffer_ser2net = ''
+ # close network connection
+ if self.socket is not None:
+ self.socket.close()
+ self.socket = None
+ if not options.quiet:
+ print '%s: Disconnected' % self.device
def test():
@@ -479,5 +481,5 @@ If running as daemon, write to syslog. Otherwise write to stdout. except SystemExit:
raise
except:
- raise
+ #~ raise
traceback.print_exc()
|