Added a try/except block around readline so that disconnection does not yield a traceback.

master
Duane Johnson 2011-11-15 22:03:18 -06:00
parent 440a5ca5af
commit 167470e638
1 changed files with 10 additions and 1 deletions

View File

@ -1,6 +1,7 @@
#!/usr/bin/env python
from serial import Serial
from threading import Thread
from select import error as SelectError
import time
import sys
@ -76,7 +77,15 @@ class printcore():
while(True):
if(not self.printer or not self.printer.isOpen):
break
line=self.printer.readline()
try:
line=self.printer.readline()
except SelectError, e:
if 'Bad file descriptor' in e.args[1]:
print "Can't read from printer (disconnected?)."
break
else:
raise
if(len(line)>1):
self.log+=[line]
if self.recvcb is not None: