Python: subprocess running rsync causes broken socket in telnetlib

Charles Wilson cygwin@cwilson.fastmail.fm
Sat Nov 13 05:04:00 GMT 2010


On 11/11/2010 10:19 PM, David Antliff wrote:
> Then the script uses subprocess to do something else (the line is
> actually longer than this but I've simplified it to the most basic
> version that exhibits the problem):
> 
>     process = subprocess.Popen("rsync", stdout=subprocess.PIPE)
> 
> On Cygwin 1.7.7, this does something nasty to the completely unrelated
> yet existing telnetlib socket so that any further attempts to read or
> write from this socket raise an exception:
> 
>   File "/usr/lib/python2.6/telnetlib.py", line 280, in write
>     self.sock.sendall(buffer)
>   File "<string>", line 1, in sendall
> socket.error: [Errno 32] Broken pipe

Try capturing stderr, and see what's there.  I suspect you may be
getting an error message like this:

  52967 [main] python 9340 C:\cygwin-1.7\bin\python.exe: *** fatal error
- unable to remap \\?\C:\cygwin-1.7\lib\python2.6\lib-dynload\time.dll
to same address as parent: 0x360000 != 0x3A0000

Perhaps running rebaseall (or some analog to perlrebase for python?)

--
Chuck

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list