Merge branch 'master' of github.com:kliment/Printrun

master
Kliment Yanev 2011-11-27 17:31:12 +01:00
commit f7e14bf772
2 changed files with 12 additions and 3 deletions

View File

@ -1,6 +1,7 @@
#!/usr/bin/env python #!/usr/bin/env python
from serial import Serial from serial import Serial
from threading import Thread from threading import Thread
from select import error as SelectError
import time import time
import sys import sys
@ -76,7 +77,15 @@ class printcore():
while(True): while(True):
if(not self.printer or not self.printer.isOpen): if(not self.printer or not self.printer.isOpen):
break break
try:
line=self.printer.readline() 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): if(len(line)>1):
self.log+=[line] self.log+=[line]
if self.recvcb is not None: if self.recvcb is not None:

View File

@ -809,14 +809,14 @@ class pronsole(cmd.Cmd):
print "! os.listdir('.')" print "! os.listdir('.')"
def default(self,l): def default(self,l):
if(l[0]=='M' or l[0]=="G"): if(l[0]=='M' or l[0]=="G" or l[0]=='T'):
if(self.p and self.p.online): if(self.p and self.p.online):
print "SENDING:"+l print "SENDING:"+l
self.p.send_now(l) self.p.send_now(l)
else: else:
print "Printer is not online." print "Printer is not online."
return return
if(l[0]=='m' or l[0]=="g"): if(l[0]=='m' or l[0]=="g" or l[0]=='t'):
if(self.p and self.p.online): if(self.p and self.p.online):
print "SENDING:"+l.upper() print "SENDING:"+l.upper()
self.p.send_now(l.upper()) self.p.send_now(l.upper())