diff options
author | Thomas Haller <thaller@redhat.com> | 2014-06-10 15:53:37 (GMT) |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2014-06-10 19:45:51 (GMT) |
commit | 29a38942aaae5a9a1145a92babfb2ad32dddb187 (patch) | |
tree | 03003d480ffd51d9ac104638f5951e2d15113914 | |
parent | bb44548b924d41b148c39ab5f4907c52bcba1003 (diff) | |
download | libnl-29a38942aaae5a9a1145a92babfb2ad32dddb187.zip libnl-29a38942aaae5a9a1145a92babfb2ad32dddb187.tar.gz libnl-29a38942aaae5a9a1145a92babfb2ad32dddb187.tar.bz2 |
lib: reorder free() after printf("%p") statements
Previously coverity was complaining about a use-after-free.
This was not a real problem, because the printf statement
does not dereferenciate the pointer. Change it to avoid
the warning.
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Thomas Haller <thaller@redhat.com>
-rw-r--r-- | lib/cache_mngr.c | 3 | ||||
-rw-r--r-- | lib/msg.c | 2 | ||||
-rw-r--r-- | lib/object.c | 4 | ||||
-rw-r--r-- | lib/route/cls/ematch.c | 3 |
4 files changed, 7 insertions, 5 deletions
diff --git a/lib/cache_mngr.c b/lib/cache_mngr.c index 7fb1ed0..36f5ca8 100644 --- a/lib/cache_mngr.c +++ b/lib/cache_mngr.c @@ -515,9 +515,10 @@ void nl_cache_mngr_free(struct nl_cache_mngr *mngr) } free(mngr->cm_assocs); - free(mngr); NL_DBG(1, "Cache manager %p freed\n", mngr); + + free(mngr); } /** @} */ @@ -569,8 +569,8 @@ void nlmsg_free(struct nl_msg *msg) if (msg->nm_refcnt <= 0) { free(msg->nm_nlh); - free(msg); NL_DBG(2, "msg %p: Freed\n", msg); + free(msg); } } diff --git a/lib/object.c b/lib/object.c index 405912b..52bc873 100644 --- a/lib/object.c +++ b/lib/object.c @@ -185,9 +185,9 @@ void nl_object_free(struct nl_object *obj) if (ops->oo_free_data) ops->oo_free_data(obj); - free(obj); - NL_DBG(4, "Freed object %p\n", obj); + + free(obj); } /** @} */ diff --git a/lib/route/cls/ematch.c b/lib/route/cls/ematch.c index 89b5067..779bf8b 100644 --- a/lib/route/cls/ematch.c +++ b/lib/route/cls/ematch.c @@ -282,9 +282,10 @@ void rtnl_ematch_tree_free(struct rtnl_ematch_tree *tree) return; free_ematch_list(&tree->et_list); - free(tree); NL_DBG(2, "Freed ematch tree %p\n", tree); + + free(tree); } /** |