From 63a3d043e3f14eebb0798a250d9aecdc8e89dfb9 Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Tue, 13 Jan 2015 15:13:40 -0800 Subject: Consistently use the "g_string_free returns a C string pointer" idiom. g_string_free(str, FALSE) frees the GString container but not the underlying g_malloc()ed string; instead, it returns a pointer to the g_malloc()ed string. Fix those places that didn't already get the string pointer from g_string_free() to do so rather than manually extracting the string themselves. And fix one place that didn't even need to use a string - it was just scanning a C string without even modifying it. Change-Id: Ibbf4872bf5b9935b9907f539b6edb1013f3053a5 Reviewed-on: https://code.wireshark.org/review/6532 Reviewed-by: Guy Harris --- epan/dfilter/dfilter-macro.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'epan/dfilter/dfilter-macro.c') diff --git a/epan/dfilter/dfilter-macro.c b/epan/dfilter/dfilter-macro.c index ed2f245374..fef1f2c561 100644 --- a/epan/dfilter/dfilter-macro.c +++ b/epan/dfilter/dfilter-macro.c @@ -318,8 +318,7 @@ static const gchar* dfilter_macro_apply_recurse(const gchar* text, guint depth, *error = "end of filter in the middle of a macro expression"; goto on_error; } case ';': { - g_ptr_array_add(args,arg->str); - g_string_free(arg,FALSE); + g_ptr_array_add(args,g_string_free(arg,FALSE)); arg = g_string_sized_new(32); break; @@ -337,10 +336,9 @@ static const gchar* dfilter_macro_apply_recurse(const gchar* text, guint depth, break; } case '}': { const gchar* resolved; - g_ptr_array_add(args,arg->str); + g_ptr_array_add(args,g_string_free(arg,FALSE)); g_ptr_array_add(args,NULL); - g_string_free(arg,FALSE); arg = NULL; resolved = dfilter_macro_resolve(name->str, (gchar**)args->pdata, error); -- cgit v1.2.1