summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/udev/udev-event.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c
index 2125a6fa0d..125b4005b1 100644
--- a/src/udev/udev-event.c
+++ b/src/udev/udev-event.c
@@ -586,6 +586,8 @@ int udev_event_spawn(struct udev_event *event,
pid_t pid;
int r;
+ assert(event);
+ assert(event->dev);
assert(result || ressize == 0);
/* pipes from child to parent */
@@ -601,6 +603,11 @@ int udev_event_spawn(struct udev_event *event,
if (!argv)
return log_oom();
+ if (isempty(argv[0])) {
+ log_error("Invalid command '%s'", cmd);
+ return -EINVAL;
+ }
+
/* allow programs in /usr/lib/udev/ to be called without the path */
if (!path_is_absolute(argv[0])) {
char *program;