summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDario Lombardo <lomato@gmail.com>2017-01-13 10:43:54 +0100
committerDario Lombardo <lomato@gmail.com>2017-01-13 16:40:30 +0000
commitdc647f115e69bc578bc6e40a6111e7f0aebeb7b1 (patch)
tree37be5c704bcf0d527f114681b308464ede4edee5
parent15deb6073409ac7523b1b9ad04003b56b02e7974 (diff)
downloadwireshark-dc647f115e69bc578bc6e40a6111e7f0aebeb7b1.tar.gz
geoip: free resources to avoid leak.
Change-Id: Ia4a938e8a6b3856959c375f4bfcdf565a21eabef Reviewed-on: https://code.wireshark.org/review/19629 Petri-Dish: Dario Lombardo <lomato@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net> Reviewed-by: Dario Lombardo <lomato@gmail.com> Tested-by: Dario Lombardo <lomato@gmail.com>
-rw-r--r--epan/geoip_db.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/epan/geoip_db.c b/epan/geoip_db.c
index f972ea0a4b..ae5f912827 100644
--- a/epan/geoip_db.c
+++ b/epan/geoip_db.c
@@ -293,9 +293,10 @@ geoip_db_lookup_latlon4(guint32 addr, float *lat, float *lon) {
case GEOIP_CITY_EDITION_REV0:
case GEOIP_CITY_EDITION_REV1:
gir = GeoIP_record_by_ipnum(gi, addr);
- if(gir) {
+ if (gir) {
*lat = gir->latitude;
*lon = gir->longitude;
+ GeoIPRecord_delete(gir);
return 0;
}
return -1;
@@ -365,6 +366,8 @@ geoip_db_lookup_ipv4(guint dbnum, guint32 addr, const char *not_found) {
} else if (gir && gir->city) {
ret = db_val_to_utf_8(gir->city, gi);
}
+ if (gir)
+ GeoIPRecord_delete(gir);
break;
case GEOIP_ORG_EDITION: