X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev.c;h=e71cddd3eee3cfd5f47d8ba892c832713f38aaa9;hb=8a0dc204e902a47a5b251c6d4a29eddb8f4a634a;hp=dad64288a9b08f0706807f305a47d7d115df930c;hpb=d07557b9b6ba72f50c6b80ea06cecac61cf9eeb1;p=elogind.git diff --git a/udev.c b/udev.c index dad64288a..e71cddd3e 100644 --- a/udev.c +++ b/udev.c @@ -108,6 +108,7 @@ int main(int argc, char *argv[], char *envp[]) udev_init_config(); /* set signal handlers */ + memset(&act, 0x00, sizeof(act)); act.sa_handler = (void (*) (int))sig_handler; sigemptyset (&act.sa_mask); act.sa_flags = 0; @@ -192,6 +193,10 @@ int main(int argc, char *argv[], char *envp[]) /* get node from db, remove db-entry, delete created node */ retval = udev_remove_device(&udev); + /* Set the DEVNAME if known */ + if (udev.devname[0] != '\0') { + setenv("DEVNAME", udev.devname, 1); + } /* run dev.d/ scripts if we're not instructed to ignore the event */ if (udev.devname[0] != '\0') { setenv("DEVNAME", udev.devname, 1);