Debian Bug report logs - #886833
rsvg_pixbuf_from_file_at_size broken in recent librsvg2-2

version graph

Package: librsvg2-2; Maintainer for librsvg2-2 is Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>; Source for librsvg2-2 is src:librsvg (PTS, buildd, popcon).

Affects: gweled

Reported by: David Baron <dbaron770@gmail.com>

Date: Wed, 10 Jan 2018 11:27:02 UTC

Severity: grave

Found in version librsvg/2.40.20-2

Fixed in version 2.42.3-1

Done: Michael Biebl <biebl@debian.org>

Bug is archived. No further changes may be made.

Forwarded to https://gitlab.gnome.org/GNOME/librsvg/issues/198

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#886833; Package gweled. (Wed, 10 Jan 2018 11:27:05 GMT) (full text, mbox, link).


Acknowledgement sent to David Baron <dbaron770@gmail.com>:
New Bug report received and forwarded. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Wed, 10 Jan 2018 11:27:05 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: David Baron <dbaron770@gmail.com>
To: submit@bugs.debian.org
Subject: [gweled] Not compatable with recent gtk
Date: Wed, 10 Jan 2018 13:23:02 +0200
[Message part 1 (text/plain, inline)]
Package: gweled
Version: 0.9.1-4
Severity: grave

--- Please enter the report below this line. ---
Can no longer use the program. Error from CLI:

~$ gweled 
*WARNING* **: Locale not supported by C library. 
*WARNING* **: GError set over the top of a previous GError or uninitializ



--- System information. ---
Architecture: 
Kernel:       Linux 4.14.0-2-amd64

Debian Release: buster/sid
  500 yakkety         ppa.launchpad.net 
  500 unstable        ftp.us.debian.org 
  500 testing         ftp.us.debian.org 
  500 sid             linux.dropbox.com 
  500 lucid           ppa.launchpad.net 
  100 jessie-backports ftp.us.debian.org 
    1 experimental    ftp.us.debian.org 

--- Package information. ---
Depends                   (Version) | Installed
===================================-+-============
libatk1.0-0             (>= 1.12.4) | 
libc6                     (>= 2.15) | 
libcairo2                (>= 1.2.4) | 
libfontconfig1            (>= 2.11) | 
libfreetype6             (>= 2.2.1) | 
libgdk-pixbuf2.0-0      (>= 2.22.0) | 
libglib2.0-0            (>= 2.37.3) | 
libgtk2.0-0             (>= 2.20.0) | 
libmikmod3               (>= 3.3.3) | 
libpango-1.0-0          (>= 1.14.0) | 
libpangocairo-1.0-0     (>= 1.14.0) | 
libpangoft2-1.0-0       (>= 1.14.0) | 
librsvg2-2              (>= 2.14.4) | 


Package's Recommends field is empty.

Package's Suggests field is empty.




[Message part 2 (text/html, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#886833; Package gweled. (Wed, 10 Jan 2018 18:36:05 GMT) (full text, mbox, link).


Acknowledgement sent to Stephen Kitt <skitt@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Wed, 10 Jan 2018 18:36:05 GMT) (full text, mbox, link).


Message #10 received at 886833@bugs.debian.org (full text, mbox, reply):

From: Stephen Kitt <skitt@debian.org>
To: David Baron <dbaron770@gmail.com>, 886833@bugs.debian.org
Subject: Re: Bug#886833: [gweled] Not compatable with recent gtk
Date: Wed, 10 Jan 2018 19:34:02 +0100
[Message part 1 (text/plain, inline)]
Control: tag -1 + moreinfo

Hi David,

On Wed, 10 Jan 2018 13:23:02 +0200, David Baron <dbaron770@gmail.com> wrote:
> Can no longer use the program. Error from CLI:
> 
> ~$ gweled 
> *WARNING* **: Locale not supported by C library. 
> *WARNING* **: GError set over the top of a previous GError or uninitializ

The locale warning suggests a configuration issue on your end; could you
check the output of the “locale” command?

> Debian Release: buster/sid
>   500 yakkety         ppa.launchpad.net 
>   500 unstable        ftp.us.debian.org 
>   500 testing         ftp.us.debian.org 
>   500 sid             linux.dropbox.com 
>   500 lucid           ppa.launchpad.net 
>   100 jessie-backports ftp.us.debian.org 
>     1 experimental    ftp.us.debian.org 

That’s an interesting mix...

> Depends                   (Version) | Installed
> ===================================-+-============
> libatk1.0-0             (>= 1.12.4) | 
> libc6                     (>= 2.15) | 
> libcairo2                (>= 1.2.4) | 
> libfontconfig1            (>= 2.11) | 
> libfreetype6             (>= 2.2.1) | 
> libgdk-pixbuf2.0-0      (>= 2.22.0) | 
> libglib2.0-0            (>= 2.37.3) | 
> libgtk2.0-0             (>= 2.20.0) | 
> libmikmod3               (>= 3.3.3) | 
> libpango-1.0-0          (>= 1.14.0) | 
> libpangocairo-1.0-0     (>= 1.14.0) | 
> libpangoft2-1.0-0       (>= 1.14.0) | 
> librsvg2-2              (>= 2.14.4) | 

Could you send the full reportbug report, including the installed versions?

Thanks,

Stephen
[Message part 2 (application/pgp-signature, inline)]

Added tag(s) moreinfo. Request was from Stephen Kitt <skitt@debian.org> to 886833-submit@bugs.debian.org. (Wed, 10 Jan 2018 18:36:05 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#886833; Package gweled. (Sun, 04 Feb 2018 14:18:03 GMT) (full text, mbox, link).


Acknowledgement sent to Juhani Numminen <juhaninumminen0@gmail.com>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Sun, 04 Feb 2018 14:18:03 GMT) (full text, mbox, link).


Message #17 received at 886833@bugs.debian.org (full text, mbox, reply):

From: Juhani Numminen <juhaninumminen0@gmail.com>
To: 886833@bugs.debian.org
Subject: Re: Bug#886833: [gweled] Not compatable with recent gtk
Date: Sun, 4 Feb 2018 16:16:14 +0200
Followup-For: Bug #886833
Package: gweled
Version: 0.9.1-4

I'm getting a segfault at startup as well. I obtained a backtrace
using the instructions from wiki:
https://wiki.debian.org/HowToGetABacktrace


juhani@computer:~$ LANG=C gdb gweled
GNU gdb (Debian 7.12-6+b1) 7.12.0.20161007-git
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from gweled...Reading symbols from /usr/lib/debug/.build-id/e4/b0823b7d96de627877b9462eeccbf06106f160.debug...done.
done.
(gdb) set pagination 0
(gdb) run
Starting program: /usr/games/gweled 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Gtk-Message: Failed to load module "atk-bridge"
Error loading config file: No such file or directory
[New Thread 0x7fd56aaf3700 (LWP 2992)]
[New Thread 0x7fd56a2f2700 (LWP 2993)]

(gweled:2987): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory.
This indicates a bug in someone's code. You must ensure an error is NULL before it's set.
The overwriting error message was: Operation not supported

Thread 1 "gweled" received signal SIGSEGV, Segmentation fault.
__GI___libc_free (mem=0x180) at malloc.c:3097
3097	malloc.c: No such file or directory.
(gdb) bt
#0  0x00007fd578b463d1 in __GI___libc_free (mem=0x180) at malloc.c:3097
#1  0x0000562f8f00e179 in sge_load_svg_to_pixbuf (filename=filename@entry=0x562f9002dc00 "gweled/gem01.svg", width=48, height=48) at sge_utils.c:42
#2  0x0000562f8f00c676 in gweled_load_pixmaps () at graphic_engine.c:81
#3  0x0000562f8f00866d in main (argc=1, argv=0x7ffde66328a8) at main.c:429
(gdb) quit
A debugging session is active.

	Inferior 1 [process 2987] will be killed.

Quit anyway? (y or n) y
juhani@computer:~$ 


-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'testing-debug')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.14.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=fi_FI.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8), LANGUAGE=fi_FI.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages gweled depends on:
ii  libatk1.0-0          2.26.1-3
ii  libc6                2.26-4
ii  libcairo2            1.15.8-3
ii  libfontconfig1       2.12.6-0.1
ii  libfreetype6         2.8.1-1
ii  libgdk-pixbuf2.0-0   2.36.11-1
ii  libglib2.0-0         2.54.3-2
ii  libgtk2.0-0          2.24.32-1
ii  libmikmod3           3.3.11.1-3
ii  libpango-1.0-0       1.40.14-1
ii  libpangocairo-1.0-0  1.40.14-1
ii  libpangoft2-1.0-0    1.40.14-1
ii  librsvg2-2           2.40.20-2

gweled recommends no packages.

gweled suggests no packages.

-- no debconf information



Set Bug forwarded-to-address to 'https://bugs.launchpad.net/debian/+source/gweled/+bug/1741664'. Request was from Stephen Kitt <skitt@debian.org> to control@bugs.debian.org. (Sun, 04 Feb 2018 22:54:05 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#886833; Package gweled. (Mon, 05 Feb 2018 08:54:04 GMT) (full text, mbox, link).


Acknowledgement sent to Stephen Kitt <skitt@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Mon, 05 Feb 2018 08:54:04 GMT) (full text, mbox, link).


Message #24 received at 886833@bugs.debian.org (full text, mbox, reply):

From: Stephen Kitt <skitt@debian.org>
To: pkg-gnome-maintainers@lists.alioth.debian.org
Cc: 886833@bugs.debian.org
Subject: Re: Bug#886833: [gweled] Not compatable with recent gtk
Date: Mon, 5 Feb 2018 09:51:08 +0100
[Message part 1 (text/plain, inline)]
Control: reassign -1 librsvg2-2
Control: affects -1 gweled
Control: retitle -1 rsvg_pixbuf_from_file_at_size broken in recent librsvg2-2

Dear Gtk/GNOME maintainers,

It looks like rsvg_acquire_file_data()’s recent switch to
g_file_new_for_uri() broke acquisition for rsvg_pixbuf_from_file_at_size()
(which admittedly is deprecated, but shouldn’t break).

gweled loads its SVGs by building a full path, and calling
rsvg_pixbuf_from_file_at_size(). This used to work fine, but breaks with
librsvg2-2 2.40.20. Tracing through the load shows that the operation which
fails is g_file_new_for_uri(). rsvg_pixbuf_from_file_at_size() itself calls
rsvg_pixbuf_from_file_with_size_data(), which duplicates the provided
filename as a URI (!) and calls _rsvg_io_acquire_data(), which tries
rsvg_acquire_file_data() since the provided URI doesn’t start with “data:”.
The latter now calls g_new_file_from_uri() which fails to construct a usable
GFile since the provided name isn’t a URI...

This can be fixed from gweled by prepending “file:/”, but that seems like a
brittle fix since rsvg_pixbuf_from_file_at_size() supposedly expects a
filename — although providing a URI also works fine in librsvg2-2 2.40.16 so
who knows.

Regards,

Stephen
[Message part 2 (application/pgp-signature, inline)]

Bug reassigned from package 'gweled' to 'librsvg2-2'. Request was from Stephen Kitt <skitt@debian.org> to 886833-submit@bugs.debian.org. (Mon, 05 Feb 2018 08:54:04 GMT) (full text, mbox, link).


No longer marked as found in versions gweled/0.9.1-4. Request was from Stephen Kitt <skitt@debian.org> to 886833-submit@bugs.debian.org. (Mon, 05 Feb 2018 08:54:05 GMT) (full text, mbox, link).


Added indication that 886833 affects gweled Request was from Stephen Kitt <skitt@debian.org> to 886833-submit@bugs.debian.org. (Mon, 05 Feb 2018 08:54:06 GMT) (full text, mbox, link).


Changed Bug title to 'rsvg_pixbuf_from_file_at_size broken in recent librsvg2-2' from '[gweled] Not compatable with recent gtk'. Request was from Stephen Kitt <skitt@debian.org> to 886833-submit@bugs.debian.org. (Mon, 05 Feb 2018 08:54:07 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>:
Bug#886833; Package librsvg2-2. (Mon, 05 Feb 2018 11:39:03 GMT) (full text, mbox, link).


Acknowledgement sent to Simon McVittie <smcv@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>. (Mon, 05 Feb 2018 11:39:03 GMT) (full text, mbox, link).


Message #37 received at 886833@bugs.debian.org (full text, mbox, reply):

From: Simon McVittie <smcv@debian.org>
To: 886833@bugs.debian.org
Subject: Re: Bug#886833: [gweled] Not compatable with recent gtk
Date: Mon, 5 Feb 2018 12:36:06 +0100
On Sun, 04 Feb 2018 at 16:16:14 +0200, Juhani Numminen wrote:
> (gweled:2987): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory.
> This indicates a bug in someone's code. You must ensure an error is NULL before it's set.
> The overwriting error message was: Operation not supported

Regardless of whether there's been an incompatible behaviour change,
this warning indicates a bug in either gweled or a library that it
uses. GErrors are like exceptions; after calling some function that
fails, you must either propagate the error to your caller, or clear the
error indicator (usually with g_clear_error()) to indicate that it has
been handled.

G_DEBUG=fatal-warnings is sometimes useful to pin down the cause for
warnings like this by turning them into fatal errors that leave a core
dump.

    smcv



Marked as found in versions librsvg/2.40.20-2. Request was from Adrian Bunk <bunk@debian.org> to control@bugs.debian.org. (Mon, 05 Feb 2018 11:39:04 GMT) (full text, mbox, link).


Removed tag(s) moreinfo. Request was from Adrian Bunk <bunk@debian.org> to control@bugs.debian.org. (Mon, 05 Feb 2018 11:39:05 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>:
Bug#886833; Package librsvg2-2. (Mon, 05 Feb 2018 13:03:03 GMT) (full text, mbox, link).


Acknowledgement sent to Stephen Kitt <skitt@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>. (Mon, 05 Feb 2018 13:03:03 GMT) (full text, mbox, link).


Message #46 received at 886833@bugs.debian.org (full text, mbox, reply):

From: Stephen Kitt <skitt@debian.org>
To: Simon McVittie <smcv@debian.org>, 886833@bugs.debian.org
Subject: Re: Bug#886833: [gweled] Not compatable with recent gtk
Date: Mon, 5 Feb 2018 13:58:48 +0100
[Message part 1 (text/plain, inline)]
Hi Simon,

On Mon, Feb 05, 2018 at 12:36:06PM +0100, Simon McVittie wrote:
> On Sun, 04 Feb 2018 at 16:16:14 +0200, Juhani Numminen wrote:
> > (gweled:2987): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory.
> > This indicates a bug in someone's code. You must ensure an error is NULL before it's set.
> > The overwriting error message was: Operation not supported
> 
> Regardless of whether there's been an incompatible behaviour change,
> this warning indicates a bug in either gweled or a library that it
> uses. GErrors are like exceptions; after calling some function that
> fails, you must either propagate the error to your caller, or clear the
> error indicator (usually with g_clear_error()) to indicate that it has
> been handled.
> 
> G_DEBUG=fatal-warnings is sometimes useful to pin down the cause for
> warnings like this by turning them into fatal errors that leave a core
> dump.

Yes, thanks, I was aware of that ;-). There are a number of problems
in gweled around the troublesome RSVG call, notably forgetting to
initialise the error pointer to NULL, and then calling g_free on it,
which crashes gweled when an error actually occurs...

I’m fixing all that in gweled, which will still leave the RSVG
regression.

Regards,

Stephen
[signature.asc (application/pgp-signature, inline)]

Changed Bug forwarded-to-address to 'https://gitlab.gnome.org/GNOME/librsvg/issues/198' from 'https://bugs.launchpad.net/debian/+source/gweled/+bug/1741664'. Request was from Stephen Kitt <skitt@debian.org> to control@bugs.debian.org. (Mon, 05 Feb 2018 13:15:05 GMT) (full text, mbox, link).


Information stored :
Bug#886833; Package librsvg2-2. (Mon, 05 Feb 2018 21:12:15 GMT) (full text, mbox, link).


Acknowledgement sent to Stephen Kitt <skitt@debian.org>:
Extra info received and filed, but not forwarded. (Mon, 05 Feb 2018 21:12:15 GMT) (full text, mbox, link).


Message #53 received at 886833-quiet@bugs.debian.org (full text, mbox, reply):

From: Stephen Kitt <skitt@debian.org>
To: 886833-quiet@bugs.debian.org
Subject: Re: Bug#886833: [gweled] Not compatable with recent gtk
Date: Mon, 5 Feb 2018 22:09:57 +0100
[Message part 1 (text/plain, inline)]
Control: clone -1 -2
Control: reassign -2 gweled
Control: found -2 0.9.1-4

On Mon, 5 Feb 2018 09:51:08 +0100, Stephen Kitt <skitt@debian.org> wrote:
> This can be fixed from gweled by prepending “file:/”, but that seems like a
> brittle fix since rsvg_pixbuf_from_file_at_size() supposedly expects a
> filename — although providing a URI also works fine in librsvg2-2 2.40.16 so
> who knows.

gweled needs a number of other fixes for its error handling here anyway, so
I’m cloning this bug so we can track that too.

Regards,

Stephen
[Message part 2 (application/pgp-signature, inline)]

Bug 886833 cloned as bug 889688 Request was from Stephen Kitt <skitt@debian.org> to 886833-quiet@bugs.debian.org. (Mon, 05 Feb 2018 21:12:15 GMT) (full text, mbox, link).


Reply sent to Michael Biebl <biebl@debian.org>:
You have taken responsibility. (Fri, 04 May 2018 18:21:09 GMT) (full text, mbox, link).


Notification sent to David Baron <dbaron770@gmail.com>:
Bug acknowledged by developer. (Fri, 04 May 2018 18:21:09 GMT) (full text, mbox, link).


Message #60 received at 886833-done@bugs.debian.org (full text, mbox, reply):

From: Michael Biebl <biebl@debian.org>
To: 886833-done@bugs.debian.org
Subject: rsvg_pixbuf_from_file_at_size broken in recent librsvg2-2
Date: Fri, 4 May 2018 20:18:59 +0200
[Message part 1 (text/plain, inline)]
Version: 2.42.3-1

Fixed by the latest upstream release:

- gitlab#198 - Fix: Make rsvg_pixbuf_from_file() and its derived
  functions work again.  Now we have tests for the whole public API.

-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?

[signature.asc (application/pgp-signature, attachment)]

Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Wed, 05 Jun 2019 07:51:41 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sun Jul 2 12:46:07 2023; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.