diff --git a/kitty/child-monitor.c b/kitty/child-monitor.c index 5a1eba40f..fdb837d69 100644 --- a/kitty/child-monitor.c +++ b/kitty/child-monitor.c @@ -330,7 +330,7 @@ render(ChildMonitor *self, double *timeout) { double now = monotonic(); double time_since_last_render = now - last_render_at; if (time_since_last_render > self->repaint_delay) { - ret = PyObject_CallObject(self->render_func, NULL); + ret = PyObject_CallFunctionObjArgs(self->render_func, NULL); if (ret == NULL) return false; else Py_DECREF(ret); glfwSwapBuffers(glfw_window_id); diff --git a/kitty/timers.c b/kitty/timers.c index 1c4c9ca4c..ccfe25d3c 100644 --- a/kitty/timers.c +++ b/kitty/timers.c @@ -189,7 +189,7 @@ timers_call(Timers *self) { for (i = 0, j = 0; i < self->count; i++) { if (self->events[i].at <= now) { // expired, call it if (self->events[i].callback != Py_None) { - PyObject *ret = PyObject_CallObject(self->events[i].callback, self->events[i].args); + PyObject *ret = self->events[i].args ? PyObject_CallObject(self->events[i].callback, self->events[i].args) : PyObject_CallFunctionObjArgs(self->events[i].callback, NULL); if (ret == NULL) PyErr_Print(); else Py_DECREF(ret); }