summaryrefslogtreecommitdiff
path: root/libpurple/network.c
diff options
context:
space:
mode:
authorElliott Sales de Andrade <qulogic@pidgin.im>2010-09-03 07:24:29 +0000
committerElliott Sales de Andrade <qulogic@pidgin.im>2010-09-03 07:24:29 +0000
commit57be1af4db93a1f116425e4e8dfdbdc07298526a (patch)
treebaaae4478396f0098f19be35038429c849265d0f /libpurple/network.c
parent96b71c973cc4d652b7ddf48e4438383fff6c1af3 (diff)
downloadpidgin-57be1af4db93a1f116425e4e8dfdbdc07298526a.tar.gz
protocol is the *value*, not the *key*. Thus, we really shouldn't be
attempting to remove it from the hash table. Especially because we just removed the corresponding key, thus invalidating this pointer. Fixes #12387.
Diffstat (limited to 'libpurple/network.c')
-rw-r--r--libpurple/network.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/libpurple/network.c b/libpurple/network.c
index 0ceff6509f..636cf59d6e 100644
--- a/libpurple/network.c
+++ b/libpurple/network.c
@@ -1077,12 +1077,10 @@ purple_network_remove_port_mapping(gint fd)
if (protocol) {
purple_network_upnp_mapping_remove(&port, protocol, NULL);
- g_hash_table_remove(upnp_port_mappings, protocol);
} else {
protocol = g_hash_table_lookup(nat_pmp_port_mappings, &port);
if (protocol) {
purple_network_nat_pmp_mapping_remove(&port, protocol, NULL);
- g_hash_table_remove(nat_pmp_port_mappings, protocol);
}
}
}