openpreserve / jpylyzer

JP2 (JPEG 2000 Part 1) validator and properties extractor. Jpylyzer was specifically created to check that a JP2 file really conforms to the format's specifications. Additionally jpylyzer is able to extract technical characteristics.
http://jpylyzer.openpreservation.org/
Other
69 stars 28 forks source link

Python 3.3 - SystemError: invalid maximum character passed to PyUnicode_New #84

Closed bitsgalore closed 6 years ago

bitsgalore commented 8 years ago

Running jpylyzer 1.17.0 over the test corpus produced the following error under Python 3.3.1 (Windows 7):

Traceback (most recent call last):
  File "f:\johan\pythoncode\jpylyzer\jpylyzer\jpylyzer.py", line 729, in <module
>
    main()
  File "f:\johan\pythoncode\jpylyzer\jpylyzer\jpylyzer.py", line 725, in main
    checkFiles(args.inputRecursiveFlag, args.inputWrapperFlag, jp2In)
  File "f:\johan\pythoncode\jpylyzer\jpylyzer\jpylyzer.py", line 626, in checkFi
les
    findFiles(recurse, paths)
  File "f:\johan\pythoncode\jpylyzer\jpylyzer\jpylyzer.py", line 515, in findFil
es
    filesList = glob.glob(root)
  File "c:\python33\lib\glob.py", line 18, in glob
    return list(iglob(pathname))
  File "c:\python33\lib\glob.py", line 50, in iglob
    for name in glob_in_dir(dirname, basename):
  File "c:\python33\lib\glob.py", line 69, in glob1
    return fnmatch.filter(names, pattern)
  File "c:\python33\lib\fnmatch.py", line 60, in filter
    if match(os.path.normcase(name)):
  File "c:\python33\lib\ntpath.py", line 91, in normcase
    return s.replace(_get_altsep(s), _get_sep(s)).lower()
SystemError: invalid maximum character passed to PyUnicode_New

This is probably caused by this bug in Python 3.3.

Follow-up action: probably nothing, as it looks like a Python bug; the error does not occur with Py 3.4.3 under Linux Mint. I'll leave this issue open until I've tested this under Windows.