diff options
author | Gary Kramlich <grim@reaperworld.com> | 2021-06-01 20:21:29 -0500 |
---|---|---|
committer | Gary Kramlich <grim@reaperworld.com> | 2021-06-01 20:21:29 -0500 |
commit | 7d89cc56e4b6a19749518b4f3b6a716ebdc667d0 (patch) | |
tree | e34711212268f4dfffd561b48c267bbd1be65670 | |
parent | 90730420b85a693de570dee0af9536231d4f01ce (diff) | |
download | pidgin-7d89cc56e4b6a19749518b4f3b6a716ebdc667d0.tar.gz |
Fix some issues scanbuild found in the simple protocol plugin
Testing Done:
Verified scanbuild no longer detected the errors.
Reviewed at https://reviews.imfreedom.org/r/704/
-rw-r--r-- | libpurple/protocols/simple/simple.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libpurple/protocols/simple/simple.c b/libpurple/protocols/simple/simple.c index fc4dfef9c0..817b074c01 100644 --- a/libpurple/protocols/simple/simple.c +++ b/libpurple/protocols/simple/simple.c @@ -1803,6 +1803,7 @@ static void simple_udp_host_resolved_listen_cb(int listenfd, gpointer data) { static void simple_udp_host_resolved(GSList *hosts, gpointer data, const char *error_message) { struct simple_account_data *sip = (struct simple_account_data*) data; int addr_size; + gpointer hosts_data; sip->query_data = NULL; @@ -1816,12 +1817,14 @@ static void simple_udp_host_resolved(GSList *hosts, gpointer data, const char *e addr_size = GPOINTER_TO_INT(hosts->data); hosts = g_slist_remove(hosts, hosts->data); memcpy(&(sip->serveraddr), hosts->data, addr_size); - g_free(hosts->data); + hosts_data = hosts->data; hosts = g_slist_remove(hosts, hosts->data); + g_free(hosts_data); while(hosts) { hosts = g_slist_remove(hosts, hosts->data); - g_free(hosts->data); + hosts_data = hosts->data; hosts = g_slist_remove(hosts, hosts->data); + g_free(hosts_data); } /* create socket for incoming connections */ |