aboutsummaryrefslogtreecommitdiffstats
path: root/epan/print.c
diff options
context:
space:
mode:
authorDario Lombardo <lomato@gmail.com>2018-02-28 19:04:25 +0100
committerAnders Broman <a.broman58@gmail.com>2018-03-07 08:03:11 +0000
commit6db59affd9c9b20f2ce725cd2ce7a88c71982a07 (patch)
tree5b47e5168af286ad02464a78bbe236e083ec353f /epan/print.c
parent8a5cd7a5c67cdca5eed91ec6a36ba310772e795f (diff)
print: free memory if not used (found by clang).
Change-Id: Ib6dc913ab1eeff7b29e18930b66b728080629773 Reviewed-on: https://code.wireshark.org/review/26183 Petri-Dish: Dario Lombardo <lomato@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: ronnie sahlberg <ronniesahlberg@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/print.c')
-rw-r--r--epan/print.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/epan/print.c b/epan/print.c
index d5a4d4aee8..14b9a0ea52 100644
--- a/epan/print.c
+++ b/epan/print.c
@@ -2311,7 +2311,7 @@ void write_fields_preamble(output_fields_t* fields, FILE *fh)
fputc('\n', fh);
}
-static void format_field_values(output_fields_t* fields, gpointer field_index, const gchar* value)
+static void format_field_values(output_fields_t* fields, gpointer field_index, gchar* value)
{
guint indx;
GPtrArray* fv_p;
@@ -2334,8 +2334,11 @@ static void format_field_values(output_fields_t* fields, gpointer field_index, c
switch (fields->occurrence) {
case 'f':
/* print the value of only the first occurrence of the field */
- if (g_ptr_array_len(fv_p) != 0)
+ /* the value won't be used, free it */
+ if (g_ptr_array_len(fv_p) != 0) {
+ g_free(value);
return;
+ }
break;
case 'l':
/* print the value of only the last occurrence of the field */