summaryrefslogtreecommitdiffstats
path: root/gio/gicon.override
diff options
context:
space:
mode:
Diffstat (limited to 'gio/gicon.override')
-rw-r--r--gio/gicon.override13
1 files changed, 5 insertions, 8 deletions
diff --git a/gio/gicon.override b/gio/gicon.override
index 6cbe180..a4ec7eb 100644
--- a/gio/gicon.override
+++ b/gio/gicon.override
@@ -109,7 +109,7 @@ _wrap_g_loadable_icon_load_async(PyGObject *self,
GCancellable *cancellable;
PyGIONotify *notify;
- notify = g_slice_new0(PyGIONotify);
+ notify = pygio_notify_new();
if (!PyArg_ParseTupleAndKeywords(args, kwargs,
"O|iOO:gio.LoadableIcon.load_async",
@@ -117,16 +117,13 @@ _wrap_g_loadable_icon_load_async(PyGObject *self,
&notify->callback, &size, &pycancellable, &notify->data))
goto error;
- if (!PyCallable_Check(notify->callback)) {
- PyErr_SetString(PyExc_TypeError, "callback argument not callable");
- goto error;
- }
+ if (!pygio_notify_callback_is_valid(notify))
+ goto error;
if (!pygio_check_cancellable(pycancellable, &cancellable))
goto error;
- Py_INCREF(notify->callback);
- Py_XINCREF(notify->data);
+ pygio_notify_reference_callback(notify);
g_loadable_icon_load_async(G_LOADABLE_ICON(self->obj),
size,
@@ -137,7 +134,7 @@ _wrap_g_loadable_icon_load_async(PyGObject *self,
return Py_None;
error:
- g_slice_free(PyGIONotify, notify);
+ pygio_notify_free(notify);
return NULL;
}
%%