[issue13906] mimetypes.py under windows - bad exception catch

Alexander Maksimenko report at bugs.python.org
Sun Jan 29 23:18:07 CET 2012


New submission from Alexander Maksimenko <alex.mclander at gmail.com>:

mimetypes.py(249) expectts Unicode*En*codeError, but Unicode*De*codeError happens when registry has non latin symbols (Vista Home 64).

I just change cathc jn next line to UnicodeDecodeError and all now works fine. But may be error not here, but on encode method which raise "negative" exception


F:\>c:\python27\python -m SimpleHTTPServer
Traceback (most recent call last):
  File "test.py", line 2, in <module>
    import SimpleHTTPServer
  File "c:\python27\lib\SimpleHTTPServer.py", line 27, in <module>
    class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
  File "c:\python27\lib\SimpleHTTPServer.py", line 204, in SimpleHTTPRequestHandler
    mimetypes.init() # try to read system mime.types
  File "c:\python27\lib\mimetypes.py", line 355, in init
    db.read_windows_registry()
  File "c:\python27\lib\mimetypes.py", line 259, in read_windows_registry
    for ctype in enum_types(mimedb):
  File "c:\python27\lib\mimetypes.py", line 249, in enum_types
    ctype = ctype.encode(default_encoding) # omit in 3.x!
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe0 in position 0: ordinal not in range(128)


---------- here after changes -----------------

F:\>c:\python27\python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...
mc-quad - - [30/Jan/2012 02:02:18] "GET / HTTP/1.1" 200 -
mc-quad - - [30/Jan/2012 02:02:18] code 404, message File not found
mc-quad - - [30/Jan/2012 02:02:18] "GET /favicon.ico HTTP/1.1" 404 -

----------
components: Library (Lib)
messages: 152267
nosy: mclander
priority: normal
severity: normal
status: open
title: mimetypes.py under windows - bad exception catch
type: behavior
versions: Python 2.7

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue13906>
_______________________________________


More information about the Python-bugs-list mailing list