Lines Matching refs:m_obj

136 mmap_object_traverse(mmap_object *m_obj, visitproc visit, void *arg)
138 Py_VISIT(Py_TYPE(m_obj));
143 mmap_object_dealloc(mmap_object *m_obj)
145 PyTypeObject *tp = Py_TYPE(m_obj);
146 PyObject_GC_UnTrack(m_obj);
150 if (m_obj->data != NULL)
151 UnmapViewOfFile (m_obj->data);
152 if (m_obj->map_handle != NULL)
153 CloseHandle (m_obj->map_handle);
154 if (m_obj->file_handle != INVALID_HANDLE_VALUE)
155 CloseHandle (m_obj->file_handle);
157 if (m_obj->tagname)
158 PyMem_Free(m_obj->tagname);
163 if (m_obj->fd >= 0)
164 (void) close(m_obj->fd);
165 if (m_obj->data!=NULL) {
166 munmap(m_obj->data, m_obj->size);
171 if (m_obj->weakreflist != NULL)
172 PyObject_ClearWeakRefs((PyObject *) m_obj);
174 tp->tp_free(m_obj);
1218 mmap_object *m_obj;
1319 m_obj = (mmap_object *)type->tp_alloc(type, 0);
1320 if (m_obj == NULL) {return NULL;}
1321 m_obj->data = NULL;
1322 m_obj->size = map_size;
1323 m_obj->pos = 0;
1324 m_obj->weakreflist = NULL;
1325 m_obj->exports = 0;
1326 m_obj->offset = offset;
1328 m_obj->fd = -1;
1347 Py_DECREF(m_obj);
1353 m_obj->fd = _Py_dup(fd);
1354 if (m_obj->fd == -1) {
1355 Py_DECREF(m_obj);
1360 m_obj->data = mmap(NULL, map_size,
1368 if (m_obj->data == (char *)-1) {
1369 m_obj->data = NULL;
1370 Py_DECREF(m_obj);
1374 m_obj->access = (access_mode)access;
1375 return (PyObject *)m_obj;
1389 mmap_object *m_obj;
1465 m_obj = (mmap_object *)type->tp_alloc(type, 0);
1466 if (m_obj == NULL)
1470 m_obj->data = NULL;
1471 m_obj->file_handle = INVALID_HANDLE_VALUE;
1472 m_obj->map_handle = NULL;
1473 m_obj->tagname = NULL;
1474 m_obj->offset = offset;
1483 (LPHANDLE)&m_obj->file_handle, /* result */
1488 Py_DECREF(m_obj);
1499 Py_DECREF(m_obj);
1507 Py_DECREF(m_obj);
1513 Py_DECREF(m_obj);
1519 Py_DECREF(m_obj);
1522 m_obj->size = (Py_ssize_t) (size - offset);
1524 m_obj->size = map_size;
1529 m_obj->size = map_size;
1534 m_obj->pos = (size_t) 0;
1536 m_obj->weakreflist = NULL;
1537 m_obj->exports = 0;
1540 m_obj->tagname = PyMem_Malloc(strlen(tagname)+1);
1541 if (m_obj->tagname == NULL) {
1543 Py_DECREF(m_obj);
1546 strcpy(m_obj->tagname, tagname);
1549 m_obj->tagname = NULL;
1551 m_obj->access = (access_mode)access;
1558 m_obj->map_handle = CreateFileMapping(m_obj->file_handle,
1563 m_obj->tagname);
1564 if (m_obj->map_handle != NULL) {
1565 m_obj->data = (char *) MapViewOfFile(m_obj->map_handle,
1569 m_obj->size);
1570 if (m_obj->data != NULL)
1571 return (PyObject *)m_obj;
1574 CloseHandle(m_obj->map_handle);
1575 m_obj->map_handle = NULL;
1579 Py_DECREF(m_obj);