Patch #
1407135, bug #
1424041: mmap.mmap(-1, size, ...) can return
anonymous memory again on Unix.
Extension Modules
-----------------
+- Patch #1407135, bug #1424041: mmap.mmap(-1, size, ...) can return
+ anonymous memory again on Unix.
+
- Bug #1215432: in bsddb DB.associate() would crash when a DBError
was supposed to be raised.
m_obj->data = NULL;
m_obj->size = (size_t) map_size;
m_obj->pos = (size_t) 0;
- m_obj->fd = dup(fd);
- if (m_obj->fd == -1) {
- Py_DECREF(m_obj);
- PyErr_SetFromErrno(mmap_module_error);
- return NULL;
+ if (fd == -1) {
+ m_obj->fd = -1;
+ } else {
+ m_obj->fd = dup(fd);
+ if (m_obj->fd == -1) {
+ Py_DECREF(m_obj);
+ PyErr_SetFromErrno(mmap_module_error);
+ return NULL;
+ }
}
+
m_obj->data = mmap(NULL, map_size,
prot, flags,
fd, 0);