udev_device_unref(dev);
dev = NULL;
- udev_event_unref(udev_event);
-
- if (udev_event->sigterm)
+ if (udev_event->sigterm) {
+ udev_event_unref(udev_event);
goto out;
+ }
+
+ udev_event_unref(udev_event);
/* wait for more device messages from main udevd, or term signal */
while (dev == NULL) {
if (WIFEXITED(status)) {
if (WEXITSTATUS(status) != 0)
- log_error("worker [%u] exit with return code %i\n", pid, WEXITSTATUS(status));
+ log_error("worker [%u] exit with return code %i\n",
+ pid, WEXITSTATUS(status));
} else if (WIFSIGNALED(status)) {
log_error("worker [%u] terminated by signal %i (%s)\n",
- pid, WTERMSIG(status), strsignal(WTERMSIG(status)));
+ pid, WTERMSIG(status), strsignal(WTERMSIG(status)));
} else if (WIFSTOPPED(status)) {
log_error("worker [%u] stopped\n", pid);
} else if (WIFCONTINUED(status)) {