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 Steven.Willis
Recipients Steven.Willis
Date 2012-08-15.17:46:32
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1345052794.26.0.230448790651.issue15676@psf.upfronthosting.co.za>
In-reply-to
Content
There are a number of issues dealing with the offset and length checks in offset, such as issue12556.

I'm running into this issue as well, but with a normal file that happens to be empty. I'm trying to access it with:

mmap.mmap(f.fileno(), length=0, access=mmap.ACCESS_READ)

So the length and offset should be calculated automatically. The man page for mmap says:

"SUSv3 specifies that mmap() should fail if length is 0.  However, in kernels before 2.6.12, mmap() succeeded in this case: no mapping was created and the call returned  addr.   Since  kernel  2.6.12, mmap() fails with the error EINVAL for this case."

So alright, mmapping an empty file is now allowed. But, could the check for an empty file be done prior to the check for the offset exceeding the size of the file? It would be much clearer in the cases where an empty (regular or otherwise) file was mmapped if the error message were something like "empty files cannot be mapped" insted of "offset is greater than file size" since I didn't even set the offset.
History
Date User Action Args
2012-08-15 17:46:34Steven.Willissetrecipients: + Steven.Willis
2012-08-15 17:46:34Steven.Willissetmessageid: <1345052794.26.0.230448790651.issue15676@psf.upfronthosting.co.za>
2012-08-15 17:46:33Steven.Willislinkissue15676 messages
2012-08-15 17:46:32Steven.Williscreate