Python app. Eroaster and "output = pipe[0].readlines()" trouble
Kevin
nobody at tek.kom
Tue Oct 16 18:36:38 EDT 2001
I checked "cdrecord -scanbus" and it writes everything to
stdout. So, I took out the "2>&1". I got exactly the same
results, namely:
Traceback (most recent call last):
File "/usr/lib/python2.0/site-packages/gtk.py", line 125, in __call__
ret = apply(self.func, a)
File "/usr/lib/eroaster/main.py", line 1468, in DetectRecorder
self.DetectSCSIDevice(deviceRecorder)
File "/usr/lib/eroaster/main.py", line 1479, in DetectSCSIDevice
output = pipe[0].readlines()
IOError: [Errno 4] Interrupted system call
The line I think caused this is the "output = pipe[0].readlines()"
line in the following:
# Detect SCSI-devices
def DetectSCSIDevice(self, device):
pipe = popen2.popen2("cdrecord -scanbus 2>&1")
output = pipe[0].readlines()
devicelist = []
Any more ideas? What is "output = pipe[0].readlines()" supposed
to do? How can I test that? Thanks...
In article <mailman.1003264156.23280.python-list at python.org>,
Ignacio Vazquez-Abrams <ignacio at openservices.net> writes:
> The problem is most likely the "2>&1" in the call to
> popen2(). Redirection is a shell function; popen*() just
> execute the process seperately, so cdrecord thinks that "2>&1"
> is a (bad) argument. It should use popen4() instead.
--
Unless otherwise noted, the statements herein reflect my personal
opinions and not those of any organization with which I may be affiliated.
More information about the Python-list
mailing list