X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibudev%2Flibudev-queue.c;h=1b3da39f83c150769c30e253ee900a7990787755;hb=c2a623d842af3a4d67e1f4e365f6d6a47f1c6cb4;hp=81f40db2085778f8b96fe838fae3b3f1503a39b1;hpb=c8f8394a9309d4390daac70b736b34d0b6734f95;p=elogind.git diff --git a/src/libudev/libudev-queue.c b/src/libudev/libudev-queue.c index 81f40db20..1b3da39f8 100644 --- a/src/libudev/libudev-queue.c +++ b/src/libudev/libudev-queue.c @@ -92,16 +92,19 @@ _public_ struct udev_queue *udev_queue_ref(struct udev_queue *udev_queue) * * Drop a reference of a udev queue context. If the refcount reaches zero, * the resources of the queue context will be released. + * + * Returns: the passed queue context if it has still an active reference, or #NULL otherwise. **/ -_public_ void udev_queue_unref(struct udev_queue *udev_queue) +_public_ struct udev_queue *udev_queue_unref(struct udev_queue *udev_queue) { if (udev_queue == NULL) - return; + return NULL; udev_queue->refcount--; if (udev_queue->refcount > 0) - return; + return udev_queue; udev_list_cleanup(&udev_queue->queue_list); free(udev_queue); + return NULL; } /** @@ -469,11 +472,3 @@ _public_ struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_qu return udev_list_get_entry(&udev_queue->queue_list); } - -struct udev_list_entry *udev_queue_get_failed_list_entry(struct udev_queue *udev_queue); -_public_ struct udev_list_entry *udev_queue_get_failed_list_entry(struct udev_queue *udev_queue) -{ - udev_err(udev_queue->udev, "udev_queue_get_failed_list_entry() does not return anything; failed events are not recorded\n"); - errno = ENOSYS; - return NULL; -}