udev-ctrl: make _unref() always return NULL

Bring this in line with the rest of the codebase.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
This commit is contained in:
Tom Gundersen 2015-05-14 15:30:52 +02:00 committed by Anthony G. Basile
parent f8f26ec383
commit b27de33448

View File

@ -142,21 +142,19 @@ struct udev *udev_ctrl_get_udev(struct udev_ctrl *uctrl) {
}
static struct udev_ctrl *udev_ctrl_ref(struct udev_ctrl *uctrl) {
if (uctrl == NULL)
return NULL;
uctrl->refcount++;
if (uctrl)
uctrl->refcount++;
return uctrl;
}
struct udev_ctrl *udev_ctrl_unref(struct udev_ctrl *uctrl) {
if (uctrl == NULL)
return NULL;
uctrl->refcount--;
if (uctrl->refcount > 0)
return uctrl;
if (uctrl->sock >= 0)
close(uctrl->sock);
free(uctrl);
if (uctrl && -- uctrl->refcount == 0) {
if (uctrl->sock >= 0)
close(uctrl->sock);
free(uctrl);
}
return NULL;
}
@ -247,15 +245,15 @@ struct udev_ctrl_connection *udev_ctrl_connection_ref(struct udev_ctrl_connectio
}
struct udev_ctrl_connection *udev_ctrl_connection_unref(struct udev_ctrl_connection *conn) {
if (conn == NULL)
return NULL;
conn->refcount--;
if (conn->refcount > 0)
return conn;
if (conn->sock >= 0)
close(conn->sock);
udev_ctrl_unref(conn->uctrl);
free(conn);
if (conn && -- conn->refcount == 0) {
if (conn->sock >= 0)
close(conn->sock);
udev_ctrl_unref(conn->uctrl);
free(conn);
}
return NULL;
}
@ -428,13 +426,11 @@ err:
}
struct udev_ctrl_msg *udev_ctrl_msg_unref(struct udev_ctrl_msg *ctrl_msg) {
if (ctrl_msg == NULL)
return NULL;
ctrl_msg->refcount--;
if (ctrl_msg->refcount > 0)
return ctrl_msg;
udev_ctrl_connection_unref(ctrl_msg->conn);
free(ctrl_msg);
if (ctrl_msg && -- ctrl_msg->refcount == 0) {
udev_ctrl_connection_unref(ctrl_msg->conn);
free(ctrl_msg);
}
return NULL;
}