Antoine Pitrou <pit...@free.fr> added the comment: > I'd consider that a bug. Esp. the IO lib should be 8-bit clean > in the sense that it doesn't add any special meaning to NUL > characters or code points.
It doesn't add any special meaning to them. It just relies on a NUL being present after the end of the string. It doesn't care about other NULs. > Besides, using a for-loop with a counter is both safer and faster > than checking each an every character for NUL. It's slower, since it has one more condition to check. Newline detection as it is written has a fast path in the form of: while (*c++ >= 0x20); > Just think of what can happen if you have buggy code that overwrites > the NUL byte in some corner case situation and then use the assumption > of having the NUL byte as terminator - a classical buffer overrun. Well, buggy code leads to bugs :) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue1943> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com