core: make sure to not call device_is_bound_by_mounts() when dev is null (#5033)

device_setup_unit() might be called (when an event happened in
/proc/self/mountinfo for example) with a null 'dev' parameter. This
indicates that the device has been unplugged but the corresponding
mountpoint is still visible in /proc/self/mountinfo.

This patch makes sure we don't call device_is_bound_by_mounts() in
this case.

Fixes: #5025
This commit is contained in:
Franck Bui
2017-01-10 09:11:34 +01:00
committed by Martin Pitt
parent 91b8fd3cad
commit d13489e2be

View File

@@ -385,7 +385,7 @@ static int device_setup_unit(Manager *m, struct udev_device *dev, const char *pa
* on its radar. In this case the device unit is partially initialized
* and includes the deps on the mount unit but at that time the "bind
* mounts" flag wasn't not present. Fix this up now. */
if (device_is_bound_by_mounts(u, dev))
if (dev && device_is_bound_by_mounts(u, dev))
device_upgrade_mount_deps(u);
/* Note that this won't dispatch the load queue, the caller