Hi,
The code is simple enough (from glib-2.42.2 ).
**
* g_list_free_full:
* @list: a pointer to a #GList
* @free_func: the function to be called to free each element's data
*
* Convenience method, which frees all the memory used by a #GList,
* and calls @free_func on every element's data.
*
* Since: 2.28
*/
void
g_list_free_full (GList *list,
GDestroyNotify free_func)
{
g_list_foreach (list, (GFunc) free_func, NULL);
g_list_free (list);
}
To provide the function for systems not having it, Evan didn’t like the function cast though even though it’s used by glib.
As for dropping SuSE 11.3 it’s perhaps time…
Regards
Anders
I was hoping to say, let's drop SuSE 11.3, as SuSE 11.4 has glib version 2.28, which includes the function. Also ReadHat 5 drops support by the end of next month. But SLES still supports it until 2019.
As for the convenience method, I would not provide a compatibility header, as this would require additional checks and defines. Just hardcode the functionality in this case, although it seems to be a burden. An utility function which masks the compatibility could also be a possible solution. In extcap I came across this issue quite some time, and most of the time I ended up hardcoding the functionality.
On Tue, Feb 14, 2017 at 12:14:24PM +0000, Anders Broman wrote:
> Hi,
> Wireshark no longer builds on SuSE 11.3
>
> home/ericsson/ewireshark/trunk/filter_files.c:104: undefined reference to `g_list_free_full'
> /home/ericsson/ewireshark/trunk/filter_files.c:105: undefined reference to `g_list_free_full'
> /home/ericsson/ewireshark/trunk/filter_files.c:106: undefined reference to `g_list_free_full'
> /home/ericsson/ewireshark/trunk/filter_files.c:107: undefined reference to `g_list_free_full'
> ui/gtk/libgtkui.a(dfilter_expr_dlg.o): In function `value_list_sel_cb':
> /home/ericsson/ewireshark/trunk/ui/gtk/dfilter_expr_dlg.c:625: undefined reference to `g_list_free_full'
This function is very useful and open-coded many times, should we
provide a compatibility header for older GLib?
--
Kind regards,
Peter Wu
https://lekensteyn.nl