From 88b5080ea9633fa0fb537f0f296fbf93b8107e1c Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Fri, 9 Sep 2022 20:55:45 +0900 Subject: [PATCH] sd-device-enumerator: use _cleanup_free_ attribute for safety No functional changes, just improve readability. Suggested by https://github.com/systemd/systemd/pull/24601#discussion_r966883459. --- src/libsystemd/sd-device/device-enumerator.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/libsystemd/sd-device/device-enumerator.c b/src/libsystemd/sd-device/device-enumerator.c index 5afe9f348f0..a583a37dab2 100644 --- a/src/libsystemd/sd-device/device-enumerator.c +++ b/src/libsystemd/sd-device/device-enumerator.c @@ -935,13 +935,17 @@ static int enumerator_scan_devices_children(sd_device_enumerator *enumerator) { r = k; } - for (char *p; (p = set_steal_first(stack)); free(p)) { + for (;;) { + _cleanup_free_ char *p = NULL; + + p = set_steal_first(stack); + if (!p) + return r; + k = parent_crawl_children(enumerator, p, &stack); if (k < 0) r = k; } - - return r; } static int enumerator_scan_devices_all(sd_device_enumerator *enumerator) { -- 2.47.3