Also, add a missing call to va_end() in PySys_Audit().
assertSequenceEqual(["call"] * 4, traced)
+def test_mmap():
+ import mmap
+ with TestHook() as hook:
+ mmap.mmap(-1, 8)
+ assertEqual(hook.seen[0][1][:2], (-1, 8))
+
+
if __name__ == "__main__":
from test.libregrtest.setup import suppress_msvcrt_asserts
suppress_msvcrt_asserts(False)
def test_cantrace(self):
self.do_test("test_cantrace")
+ def test_mmap(self):
+ self.do_test("test_mmap")
+
if __name__ == "__main__":
unittest.main()
--- /dev/null
+Fix the :c:func:`PySys_Audit` call in :class:`mmap.mmap`.
}
if (PySys_Audit("mmap.__new__", "ini" _Py_PARSE_OFF_T,
- fileno, map_size, access, offset) < 0) {
+ fd, map_size, access, offset) < 0) {
return NULL;
}
va_list args;
va_start(args, argFormat);
eventArgs = Py_VaBuildValue(argFormat, args);
+ va_end(args);
if (eventArgs && !PyTuple_Check(eventArgs)) {
PyObject *argTuple = PyTuple_Pack(1, eventArgs);
Py_DECREF(eventArgs);