[ python-Bugs-909230 ] bug in idna-encoding-module
SourceForge.net
noreply at sourceforge.net
Wed Mar 24 11:40:57 EST 2004
Bugs item #909230, was opened at 2004-03-03 19:13
Message generated for change (Comment added) made by loewis
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=909230&group_id=5470
Category: Python Library
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Rumpeltux (rumpeltux)
Assigned to: Martin v. Löwis (loewis)
Summary: bug in idna-encoding-module
Initial Comment:
in /usr/lib/python2.3/encodings/idna.py, line 175 it goes:
lables = input.split('.')
which causes the interpreter to stop executing the
program, but by changing it to
labels = dots.split(input)
everything's fine ;)
----------------------------------------------------------------------
>Comment By: Martin v. Löwis (loewis)
Date: 2004-03-24 17:40
Message:
Logged In: YES
user_id=21627
This is now fixed in idna.py 1.4 and 1.2.12.2, by converting input to a
string object. I leave this open to find out why there is a buffer object in
the first place.
----------------------------------------------------------------------
Comment By: Rumpeltux (rumpeltux)
Date: 2004-03-23 17:17
Message:
Logged In: YES
user_id=989758
>>> unicode('xn--mller-kva.de', 'idna')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/lib/python2.3/encodings/idna.py", line 175, in
decode
labels = input.split(".")
AttributeError: 'buffer' object has no attribute 'split'
----------------------------------------------------------------------
Comment By: Martin v. Löwis (loewis)
Date: 2004-03-22 23:26
Message:
Logged In: YES
user_id=21627
I can't see any problem in the code. The invocation of unicode() is
correct - we just look for the exception that call may raise.
Rumpeltux, can you please report the exact input and exception you get?
----------------------------------------------------------------------
Comment By: Neal Norwitz (nnorwitz)
Date: 2004-03-05 20:52
Message:
Logged In: YES
user_id=33168
Martin, it looks like line 174: unicode(input, "ascii")
should be input = unicode(input, "ascii").
I'm not sure what's supposed to happenning here, but it
looks like the if/else code block may be able to be
rewritten as:
if not isinstance(input, unicode):
input = unicode(input, "ascii")
labels = dots.split(input)
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=909230&group_id=5470
More information about the Python-bugs-list
mailing list