summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2015-12-10 16:04:47 +0100
committerThomas Haller <thaller@redhat.com>2015-12-10 18:07:33 +0100
commit22afc38bddcbc424f72de265528c82e4155a41a7 (patch)
treefb24d9f72e4a9ef331a982f4b4dbcabc0ff7d8a6
parenteb8c2b082a43b59e13be71a87c2768978dd109f5 (diff)
downloadNetworkManager-nm-0-9-10.tar.gz
platform: fix memleak in _nl_link_parse_info_data()nm-0-9-10
Fixes: e9f364548a65fd4e26bf22367fe7c28fe127ab41 (cherry picked from commit 088604f62ea77fcc492eb6cb4df70dcdbc318751)
-rw-r--r--src/platform/nm-linux-platform.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
index 0f8b80d197..0160c16d8f 100644
--- a/src/platform/nm-linux-platform.c
+++ b/src/platform/nm-linux-platform.c
@@ -540,6 +540,7 @@ nm_rtnl_link_parse_info_data (struct nl_sock *sk, int ifindex,
NMNLInfoDataClosure data = { .parser = parser, .parser_data = parser_data };
struct nl_msg *msg = NULL;
struct nl_cb *cb;
+ struct nl_cb *cb0;
int err;
err = rtnl_link_build_get_request (ifindex, NULL, &msg);
@@ -551,7 +552,9 @@ nm_rtnl_link_parse_info_data (struct nl_sock *sk, int ifindex,
if (err < 0)
return err;
- cb = nl_cb_clone (nl_socket_get_cb (sk));
+ cb0 = nl_socket_get_cb (sk);
+ cb = nl_cb_clone (cb0);
+ nl_cb_put (cb0);
if (cb == NULL)
return -NLE_NOMEM;
nl_cb_set (cb, NL_CB_VALID, NL_CB_CUSTOM, info_data_parser, &data);