homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ezio.melotti
Recipients christian.heimes, ezio.melotti, felipecruz, jcea, pitrou
Date 2012年09月15日.05:10:10
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1347685812.59.0.276096036472.issue15897@psf.upfronthosting.co.za>
In-reply-to
Content
I suggested to Felipe on IRC to use "read" instead of "seek" because I don't think it's worth making a distinction between the two. Moreover ISTM that in most of the cases, if the fseek fails, the error is detected in a following fread, so the message currently says "can't read", and changing it to "can't seek" is technically backward-incompatible.
We also checked if the test suite followed any of these new error paths, but apparently only the "if" added in the first chunk (line 880, in read_directory) is already covered. Going through the following chunks (the ones with the goto fseek_error) is fairly difficult. It should be possibly to trigger the error at line 1071, in get_data, by changing the value of self.archive, but alas self.archive is read-only.
The error generated by PyErr_SetFromErrno() doesn't seem too useful. For example, with "PyErr_SetFromErrno(PyExc_IOError);" instead of "PyErr_Format(ZipImportError, "can't open Zip file: %R", archive);", the error becomes "OSError: [Errno 22] Invalid argument". This alone is fairly useless, even though the message might be better in other situations. I think either using PyErr_Format, or a combination of the two (something like "ZipImportError: can't read Zip file: 'ziptestmodule' ([Errno 22] Invalid argument)") would be better.
History
Date User Action Args
2012年09月15日 05:10:12ezio.melottisetrecipients: + ezio.melotti, jcea, pitrou, christian.heimes, felipecruz
2012年09月15日 05:10:12ezio.melottisetmessageid: <1347685812.59.0.276096036472.issue15897@psf.upfronthosting.co.za>
2012年09月15日 05:10:12ezio.melottilinkissue15897 messages
2012年09月15日 05:10:10ezio.melotticreate

AltStyle によって変換されたページ (->オリジナル) /