diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-10-12 20:28:21 -0400 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-10-13 17:56:55 -0400 |
commit | 1ca208fb4f93e5869704af1812cbff7130a2fc03 (patch) | |
tree | 689343b99c76e4d34c625197762de97e8435571d /src/test/test-udev.c | |
parent | b506291ff195e03ce793ac925cc2d158f0b452b5 (diff) | |
download | systemd-1ca208fb4f93e5869704af1812cbff7130a2fc03.tar.gz |
Introduce udev object cleanup functions
Diffstat (limited to 'src/test/test-udev.c')
-rw-r--r-- | src/test/test-udev.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/test/test-udev.c b/src/test/test-udev.c index 52b61b4206..17825f12b4 100644 --- a/src/test/test-udev.c +++ b/src/test/test-udev.c @@ -34,6 +34,7 @@ #include "missing.h" #include "udev.h" +#include "udev-util.h" void udev_main_log(struct udev *udev, int priority, const char *file, int line, const char *fn, @@ -82,10 +83,10 @@ out: int main(int argc, char *argv[]) { - struct udev *udev; - struct udev_event *event = NULL; - struct udev_device *dev = NULL; - struct udev_rules *rules = NULL; + _cleanup_udev_unref_ struct udev *udev = NULL; + _cleanup_udev_event_unref_ struct udev_event *event = NULL; + _cleanup_udev_device_unref_ struct udev_device *dev = NULL; + _cleanup_udev_rules_unref_ struct udev_rules *rules = NULL; char syspath[UTIL_PATH_SIZE]; const char *devpath; const char *action; @@ -98,7 +99,8 @@ int main(int argc, char *argv[]) udev = udev_new(); if (udev == NULL) - exit(EXIT_FAILURE); + return EXIT_FAILURE; + log_debug("version %s\n", VERSION); label_init("/dev"); @@ -160,12 +162,7 @@ int main(int argc, char *argv[]) out: if (event != NULL && event->fd_signal >= 0) close(event->fd_signal); - udev_event_unref(event); - udev_device_unref(dev); - udev_rules_unref(rules); label_finish(); - udev_unref(udev); - if (err != 0) - return EXIT_FAILURE; - return EXIT_SUCCESS; + + return err ? EXIT_FAILURE : EXIT_SUCCESS; } |