tags 665675 + patch thanks On 31.03.2012 01:28, Michael Biebl wrote: > Hi Bdale, > > On 30.03.2012 18:27, Bdale Garbee wrote: >> <#part sign=pgpmime> >> On Fri, 30 Mar 2012 08:18:33 +0000, ow...@bugs.debian.org (Debian Bug >> Tracking System) wrote: >>> Please contact me if you need assistance. >> >> Is there documentation somewhere about what glib upstream broke that's >> causing the problem, and recommendations for working around the breakage >> in packages? > > Looking at common-src/glib-util.[ch], amanda apparently defines it's own > version of g_queue_free_full, which since 2.31.16 [1] is part of glib > upstream. One could argue that it wasn't a clever idea of amanda to use > the glib namespace to define it's own set of utility functions. > > There seems to be a amanda upstream thread about this issue [2]. > > I don't see those functions used in the code (using a simple grep), > maybe they can just be dropped? > > Michael > > [1] http://mail.gnome.org/archives/commits-list/2011-December/msg05637.html > [2] http://www.mail-archive.com/amanda-users@amanda.org/msg46201.html
The attached patch simply removes g_queue_free_full (seeing that it apparently isn't used in the code). I could successfully compile with the patch applied but have done no further testing. Michael -- Why is it that all of the instruments seeking intelligent life in the universe are pointed away from Earth?
Description: Remove g_queue_free_full() since it conflicts with glib 2.32 glib 2.32 introduce g_queue_free_full() which conflicts with the amanda-internal version of this function. As it doesn't seem to be used, simply remove it. Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=665675 Index: amanda-3.3.1/common-src/glib-util.c =================================================================== --- amanda-3.3.1.orig/common-src/glib-util.c 2012-02-21 12:36:51.000000000 +0100 +++ amanda-3.3.1/common-src/glib-util.c 2012-03-31 01:33:21.177134297 +0200 @@ -120,15 +120,6 @@ } #endif -void g_queue_free_full(GQueue * queue) { - while (!g_queue_is_empty(queue)) { - gpointer data; - data = g_queue_pop_head(queue); - amfree(data); - } - g_queue_free(queue); -} - void g_ptr_array_free_full(GPtrArray * array) { size_t i; Index: amanda-3.3.1/common-src/glib-util.h =================================================================== --- amanda-3.3.1.orig/common-src/glib-util.h 2012-02-21 12:36:51.000000000 +0100 +++ amanda-3.3.1/common-src/glib-util.h 2012-03-31 01:33:29.013134019 +0200 @@ -72,7 +72,6 @@ /* These functions all take a GLib container, and call free() on all the * pointers in the container before free()ing the container itself. */ -void g_queue_free_full(GQueue * queue); void g_ptr_array_free_full(GPtrArray * array); /* g_value_compare() does what you expect. It returns TRUE if and
signature.asc
Description: OpenPGP digital signature