[systemd-devel] [PATCH] sd-dhcp-client: prevent timer related memory leaks
Umut Tezduyar Lindskog
umut.tezduyar at axis.com
Thu Feb 20 10:49:45 PST 2014
---
src/libsystemd-dhcp/sd-dhcp-client.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/libsystemd-dhcp/sd-dhcp-client.c b/src/libsystemd-dhcp/sd-dhcp-client.c
index ec2b53f..84d38f0 100644
--- a/src/libsystemd-dhcp/sd-dhcp-client.c
+++ b/src/libsystemd-dhcp/sd-dhcp-client.c
@@ -392,6 +392,9 @@ static int client_timeout_resend(sd_event_source *s, uint64_t usec,
next_timeout += (random_u32() & 0x1fffff);
+ if (client->timeout_resend)
+ client->timeout_resend = sd_event_source_unref(client->timeout_resend);
+
r = sd_event_add_monotonic(client->event,
&client->timeout_resend,
next_timeout,
@@ -477,6 +480,9 @@ static int client_initialize_events(sd_dhcp_client *client,
if (r < 0)
goto error;
+ if (client->timeout_resend)
+ client->timeout_resend = sd_event_source_unref(client->timeout_resend);
+
r = sd_event_add_monotonic(client->event,
&client->timeout_resend,
usec, 0,
--
1.7.10.4
More information about the systemd-devel
mailing list