[Python-checkins] r88038 - in python/branches/release27-maint: Lib/test/test_mmap.py Modules/mmapmodule.c
antoine.pitrou
python-checkins at python.org
Sat Jan 15 18:40:00 CET 2011
Author: antoine.pitrou
Date: Sat Jan 15 18:40:00 2011
New Revision: 88038
Log:
Merged revisions 88036 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r88036 | antoine.pitrou | 2011-01-15 18:25:58 +0100 (sam., 15 janv. 2011) | 3 lines
Fix mmap and test_mmap under Windows too (followup to r88022)
........
Modified:
python/branches/release27-maint/ (props changed)
python/branches/release27-maint/Lib/test/test_mmap.py
python/branches/release27-maint/Modules/mmapmodule.c
Modified: python/branches/release27-maint/Lib/test/test_mmap.py
==============================================================================
--- python/branches/release27-maint/Lib/test/test_mmap.py (original)
+++ python/branches/release27-maint/Lib/test/test_mmap.py Sat Jan 15 18:40:00 2011
@@ -331,13 +331,17 @@
# map length with an offset doesn't cause a segfault.
if not hasattr(os, "stat"):
self.skipTest("needs os.stat")
- with open(TESTFN, "wb+") as f:
- f.write(49152 * b'm') # Arbitrary character
+ # NOTE: allocation granularity is currently 65536 under Win64,
+ # and therefore the minimum offset alignment.
+ with open(TESTFN, "wb") as f:
+ f.write((65536 * 2) * b'm') # Arbitrary character
with open(TESTFN, "rb") as f:
- mf = mmap.mmap(f.fileno(), 0, offset=40960, access=mmap.ACCESS_READ)
- self.assertRaises(IndexError, mf.__getitem__, 45000)
- mf.close()
+ mf = mmap.mmap(f.fileno(), 0, offset=65536, access=mmap.ACCESS_READ)
+ try:
+ self.assertRaises(IndexError, mf.__getitem__, 80000)
+ finally:
+ mf.close()
def test_move(self):
# make move works everywhere (64-bit format problem earlier)
Modified: python/branches/release27-maint/Modules/mmapmodule.c
==============================================================================
--- python/branches/release27-maint/Modules/mmapmodule.c (original)
+++ python/branches/release27-maint/Modules/mmapmodule.c Sat Jan 15 18:40:00 2011
@@ -1346,6 +1346,7 @@
else
m_obj->size = low;
#endif
+ m_obj->size -= offset;
} else {
m_obj->size = map_size;
}
More information about the Python-checkins
mailing list