From c4603a0726b30ce30472a6dfdeb1a76c365dd89f Mon Sep 17 00:00:00 2001 From: "greg@kroah.com" Date: Thu, 1 Apr 2004 21:52:46 -0800 Subject: [PATCH] fix some segfaults when running udevtest for network devices. --- udev-add.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/udev-add.c b/udev-add.c index 09c2ac6d3e..20599822d3 100644 --- a/udev-add.c +++ b/udev-add.c @@ -446,9 +446,9 @@ int udev_add_device(char *path, char *subsystem, int fake) case 'b': case 'c': retval = create_node(&dev, fake); - if (fake || retval != 0) + if (retval != 0) goto exit; - if (udevdb_add_dev(path, &dev) != 0) + if ((!fake) && (udevdb_add_dev(path, &dev) != 0)) dbg("udevdb_add_dev failed, but we are going to try " "to create the node anyway. But remove might not " "work properly for this device."); @@ -459,7 +459,7 @@ int udev_add_device(char *path, char *subsystem, int fake) case 'n': if (strcmp(dev.name, dev.kernel_name) != 0) { retval = rename_net_if(&dev, fake); - if (fake || retval != 0) + if (retval != 0) goto exit; /* netif's are keyed with the configured name, cause * the original kernel name sleeps with the fishes @@ -471,7 +471,7 @@ int udev_add_device(char *path, char *subsystem, int fake) strfieldcat(devpath, dev.name); } } - if (udevdb_add_dev(devpath, &dev) != 0) + if ((!fake) && (udevdb_add_dev(devpath, &dev) != 0)) dbg("udevdb_add_dev failed"); dev_d_send(&dev, subsystem, devpath); -- cgit v1.2.3-54-g00ecf