From: Tom Gundersen Date: Sat, 12 Jul 2014 23:11:52 +0000 (+0200) Subject: networkd: link - fix memory leak X-Git-Tag: v216~626 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=679b3605f0ea52ee56ae76e57dfd17bcfef5b122 networkd: link - fix memory leak Make link_initialized() idempotent to avoid taking refs on several udev_device objects. --- diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 0947b0c90..877b7a9be 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -2122,6 +2122,9 @@ int link_initialized(Link *link, struct udev_device *device) { if (link->state != LINK_STATE_INITIALIZING) return 0; + if (link->udev_device) + return 0; + log_debug_link(link, "udev initialized link"); link->udev_device = udev_device_ref(device);