On Mon, Jul 21, 2008 at 2:17 PM, Victor Stinner < victor.stinner@haypocalc.com> wrote:
Hi,
Since Python 2.4 (maybe 2.2 or older), fileobj.read(4.2) displays an error and works as fileobj.read(4).
i=open('/etc/issue') i.read(4.2) __main__:1: DeprecationWarning: integer argument expected, got float
This warning is actually given by the argument parser when "i" gets a Python non-integer.
It should raises an error instead of a warning, it has no sense to read a partial byte :-) But that should breaks some applications?
This doesn't come into effect until 3.0.
Well, the real problem is os.urandom(4.2) which goes to an unlimited loop:
while len(bytes) < n: bytes += read(_urandomfd, n - len(bytes))
because read(0.2) works as read(0) :-/
Victor _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/musiccomposition%40gmail.c...
-- Cheers, Benjamin Peterson "There's no place like 127.0.0.1."