From: Jeremy Kerr Date: Mon, 13 May 2013 02:08:47 +0000 (+0800) Subject: discover: Allow devices with no device_path X-Git-Tag: v1.0.0~634 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=198c4e575e177ae5458238e7b474361506a6f302;ds=sidebyside discover: Allow devices with no device_path Devices that have been added via the user path may not have a device path. In this case, don't segfault in device_match_path, and break out of mount_device early. Signed-off-by: Jeremy Kerr --- diff --git a/discover/device-handler.c b/discover/device-handler.c index 43171eb..2396124 100644 --- a/discover/device-handler.c +++ b/discover/device-handler.c @@ -235,6 +235,9 @@ static int mount_device(struct discover_device *dev) { const char *argv[6]; + if (!dev->device_path) + return -1; + if (!dev->mount_path) dev->mount_path = join_paths(dev, mount_base(), dev->device_path); @@ -576,7 +579,7 @@ void device_handler_destroy(struct device_handler *handler) static int device_match_path(struct discover_device *dev, const char *path) { - return !strcmp(dev->device_path, path); + return dev->device_path && !strcmp(dev->device_path, path); } static int device_match_uuid(struct discover_device *dev, const char *uuid)