mirror of
https://github.com/python/cpython.git
synced 2025-11-01 10:45:30 +00:00
Cleanup the previous checkin.
Close the fd in the close method and invalidated it. Don't try to close a second time when deallocating.
This commit is contained in:
parent
7b631793ab
commit
6eac2005bf
1 changed files with 4 additions and 1 deletions
|
|
@ -99,7 +99,8 @@ mmap_object_dealloc(mmap_object *m_obj)
|
||||||
#endif /* MS_WINDOWS */
|
#endif /* MS_WINDOWS */
|
||||||
|
|
||||||
#ifdef UNIX
|
#ifdef UNIX
|
||||||
close(m_obj->fd);
|
if (m_obj->fd >= 0)
|
||||||
|
(void) close(m_obj->fd);
|
||||||
if (m_obj->data!=NULL) {
|
if (m_obj->data!=NULL) {
|
||||||
msync(m_obj->data, m_obj->size, MS_SYNC);
|
msync(m_obj->data, m_obj->size, MS_SYNC);
|
||||||
munmap(m_obj->data, m_obj->size);
|
munmap(m_obj->data, m_obj->size);
|
||||||
|
|
@ -137,6 +138,8 @@ mmap_close_method(mmap_object *self, PyObject *args)
|
||||||
#endif /* MS_WINDOWS */
|
#endif /* MS_WINDOWS */
|
||||||
|
|
||||||
#ifdef UNIX
|
#ifdef UNIX
|
||||||
|
(void) close(self->fd);
|
||||||
|
self->fd = -1;
|
||||||
if (self->data != NULL) {
|
if (self->data != NULL) {
|
||||||
munmap(self->data, self->size);
|
munmap(self->data, self->size);
|
||||||
self->data = NULL;
|
self->data = NULL;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue