Kaydet (Commit) e139688d authored tarafından Facundo Batista's avatar Facundo Batista

Issue 2112. mmap does not raises EnvironmentError no more, but

a subclass of it. Thanks John Lenton.
üst f88a077f
...@@ -436,6 +436,11 @@ class MmapTests(unittest.TestCase): ...@@ -436,6 +436,11 @@ class MmapTests(unittest.TestCase):
self.assertRaises(TypeError, m.write, "foo") self.assertRaises(TypeError, m.write, "foo")
def test_error(self):
self.assert_(issubclass(mmap.error, EnvironmentError))
self.assert_("mmap.error" in str(mmap.error))
def test_main(): def test_main():
run_unittest(MmapTests) run_unittest(MmapTests)
......
...@@ -1149,6 +1149,9 @@ Library ...@@ -1149,6 +1149,9 @@ Library
Extension Modules Extension Modules
----------------- -----------------
- #2112: mmap.error is now a subclass of EnvironmentError and not a
direct EnvironmentError
- Bug #2111: mmap segfaults when trying to write a block opened with PROT_READ - Bug #2111: mmap segfaults when trying to write a block opened with PROT_READ
- #2063: correct order of utime and stime in os.times() result on Windows. - #2063: correct order of utime and stime in os.times() result on Windows.
......
...@@ -1402,7 +1402,10 @@ initmmap(void) ...@@ -1402,7 +1402,10 @@ initmmap(void)
dict = PyModule_GetDict(module); dict = PyModule_GetDict(module);
if (!dict) if (!dict)
return; return;
mmap_module_error = PyExc_EnvironmentError; mmap_module_error = PyErr_NewException("mmap.error",
PyExc_EnvironmentError , NULL);
if (mmap_module_error == NULL)
return;
PyDict_SetItemString(dict, "error", mmap_module_error); PyDict_SetItemString(dict, "error", mmap_module_error);
PyDict_SetItemString(dict, "mmap", (PyObject*) &mmap_object_type); PyDict_SetItemString(dict, "mmap", (PyObject*) &mmap_object_type);
#ifdef PROT_EXEC #ifdef PROT_EXEC
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment