From f96c1d76fd658ca24ffbd3474df82f67558dc56d Mon Sep 17 00:00:00 2001 From: Masashi Honma Date: Sat, 12 Jan 2013 10:30:07 +0200 Subject: [PATCH] P2P: Fix some memory leaks in p2p_add_device() Signed-hostap: Masashi Honma --- src/p2p/p2p.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c index 4a09b84f1..b994a44ab 100644 --- a/src/p2p/p2p.c +++ b/src/p2p/p2p.c @@ -629,6 +629,7 @@ int p2p_add_device(struct p2p_data *p2p, const u8 *addr, int freq, wpa_msg(p2p->cfg->msg_ctx, MSG_DEBUG, "P2P: Do not add peer " "filter for " MACSTR " due to peer filter", MAC2STR(p2p_dev_addr)); + p2p_parse_free(&msg); return 0; } @@ -648,8 +649,10 @@ int p2p_add_device(struct p2p_data *p2p, const u8 *addr, int freq, * entry is newer than the one previously stored. */ if (dev->last_seen.usec > 0 && - os_time_before(&entry_ts, &dev->last_seen)) + os_time_before(&entry_ts, &dev->last_seen)) { + p2p_parse_free(&msg); return -1; + } os_memcpy(&dev->last_seen, &entry_ts, sizeof(struct os_time));