chiark / gitweb /
udevadm: enumerate - update prev pointer properly
[elogind.git] / libudev / libudev-enumerate.c
index e46bc087fa31879573a3107f189be62b6191d9d5..9694797d35c42d8aab804cd69e90192fe6f9a616 100644 (file)
@@ -274,6 +274,9 @@ struct udev_list_entry *udev_enumerate_get_list_entry(struct udev_enumerate *ude
                        /* skip to be delayed devices, and add them to the end of the list */
                        if (devices_delay_end(udev_enumerate->udev, entry->syspath)) {
                                syspath_add(udev_enumerate, entry->syspath);
+                               /* need to update prev here for the case realloc() gives
+                                  a different address */
+                               prev = &udev_enumerate->devices[i];
                                continue;
                        }