[Patches] [ python-Patches-788404 ] ignore "b" and "t" mode
modifiers in posix_popen
SourceForge.net
noreply at sourceforge.net
Sat Sep 20 07:17:11 EDT 2003
Patches item #788404, was opened at 2003-08-14 00:53
Message generated for change (Settings changed) made by loewis
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=788404&group_id=5470
Category: Library (Lib)
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Andrew Gaul (gaul)
>Assigned to: Martin v. Löwis (loewis)
Summary: ignore "b" and "t" mode modifiers in posix_popen
Initial Comment:
Fixes bug 703198. This patch removes any "b" or "t"
modifiers, which have meaning in Windows (binary and
text modes, respectively), but not in POSIX. This
allows users to write portable code between Windows and
POSIX when working on binary data in pipes:
os.popen(cmd, 'rb').
----------------------------------------------------------------------
Comment By: Andrew Gaul (gaul)
Date: 2003-09-01 14:13
Message:
Logged In: YES
user_id=139865
*puzzles over why patch is so backward* Yes, it modifies an
immutable object - double plus ungood. Attached is a
simpler patch which does the right thing. Sorry, I do not
know what was going through my head at the time. My best
guess was that I thought that mode was a safe, mutable copy
of the immutable Python string and I wanted to allow modes
like "br", which the MSDN docs actually say are invalid ('b'
and 't' modifiers must be appended).
Note that the behaviour of POSIX posix_popen in this patch
differs from Windows posix_popen, as the latter allows
treats "rw", "r+", and "rr" as "r". In all three cases,
POSIX systems throw "OSError: [Errno 22] Invalid argument"
at pipe creation. In the case of "rw", Windows systems
throw "IOError: [Errno 9] Bad file descriptor" when the
read-only pipe is first written to. Ideally, Windows
posix_popen should be modified to the new POSIX behaviour to
give earlier error reporting.
----------------------------------------------------------------------
Comment By: Martin v. Löwis (loewis)
Date: 2003-08-31 18:42
Message:
Logged In: YES
user_id=21627
Maybe I'm mistaken: Does this patch really modify the string
object that is being passed? This would not be good: strings
are immutable.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=788404&group_id=5470
More information about the Patches
mailing list