Skip to content

Commit 7fe2bfd

Browse files
committed
time.clock_gettime and clock_gettime_ns are METH_O in Python 3.13.0a2+
See python/cpython@4fe22c73770
1 parent e3478cc commit 7fe2bfd

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/_time_machine.c

+13
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,11 @@ _time_machine_clock_gettime(PyObject *self, PyObject *args)
108108
PyObject *time_machine_module = PyImport_ImportModule("time_machine");
109109
PyObject *time_machine_clock_gettime = PyObject_GetAttrString(time_machine_module, "clock_gettime");
110110

111+
#if PY_VERSION_HEX >= 0x030d00a2
112+
PyObject* result = PyObject_CallOneArg(time_machine_clock_gettime, args);
113+
#else
111114
PyObject* result = PyObject_CallObject(time_machine_clock_gettime, args);
115+
#endif
112116

113117
Py_DECREF(time_machine_clock_gettime);
114118
Py_DECREF(time_machine_module);
@@ -142,7 +146,11 @@ _time_machine_clock_gettime_ns(PyObject *self, PyObject *args)
142146
PyObject *time_machine_module = PyImport_ImportModule("time_machine");
143147
PyObject *time_machine_clock_gettime_ns = PyObject_GetAttrString(time_machine_module, "clock_gettime_ns");
144148

149+
#if PY_VERSION_HEX >= 0x030d00a2
150+
PyObject* result = PyObject_CallOneArg(time_machine_clock_gettime_ns, args);
151+
#else
145152
PyObject* result = PyObject_CallObject(time_machine_clock_gettime_ns, args);
153+
#endif
146154

147155
Py_DECREF(time_machine_clock_gettime_ns);
148156
Py_DECREF(time_machine_module);
@@ -478,8 +486,13 @@ PyDoc_STRVAR(module_doc, "_time_machine module");
478486
static PyMethodDef module_functions[] = {
479487
{"original_now", (PyCFunction)_time_machine_original_now, METH_FASTCALL|METH_KEYWORDS, original_now_doc},
480488
{"original_utcnow", (PyCFunction)_time_machine_original_utcnow, METH_NOARGS, original_utcnow_doc},
489+
#if PY_VERSION_HEX >= 0x030d00a2
490+
{"original_clock_gettime", (PyCFunction)_time_machine_original_clock_gettime, METH_O, original_clock_gettime_doc},
491+
{"original_clock_gettime_ns", (PyCFunction)_time_machine_original_clock_gettime_ns, METH_O, original_clock_gettime_ns_doc},
492+
#else
481493
{"original_clock_gettime", (PyCFunction)_time_machine_original_clock_gettime, METH_VARARGS, original_clock_gettime_doc},
482494
{"original_clock_gettime_ns", (PyCFunction)_time_machine_original_clock_gettime_ns, METH_VARARGS, original_clock_gettime_ns_doc},
495+
#endif
483496
{"original_gmtime", (PyCFunction)_time_machine_original_gmtime, METH_VARARGS, original_gmtime_doc},
484497
{"original_localtime", (PyCFunction)_time_machine_original_localtime, METH_VARARGS, original_localtime_doc},
485498
{"original_monotonic", (PyCFunction)_time_machine_original_monotonic, METH_NOARGS, original_monotonic_doc},

0 commit comments

Comments
 (0)