** Description changed: + [ Description ] + + In the Raring cycle, libgobject gained a global constructor. + + If a dynamically loaded module (by gdk-pixbuf-query-modules, which is + called by a postinst trigger in this package, so quite common on + upgrades) happens to dlclose() libgobject then we get this crash. + + This can easily happen in dist-upgrades if you get unlucky with the + ordering. + + [ Proposed fix ] + + Build with -Wl,--no-as-needed to ensure we get linked against libgobject + even though we use none of its symbols. + + In later glib & gdk-pixbuf releases, there's a function g_type_ensure() + which is used for this purpose, but we don't have that in 12.04. + + [ Development Fix ] + + Described above: g_type_ensure() is used. + + [ Regression potential ] + + Not sure. The library will now be linked against more things so it could + be a bit slower to initialise. + + [ QA ] + + 1. Be in a precise chroot without precise-proposed + 2. apt-get install libgdk-pixbuf2.0-0 + 3. sed -i 's/precise/trusty/' /etc/apt/sources.list + 4. apt-get update + 5. apt-get install libglib2.0-0 + 6. /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders # or your arch here + # that should have segfaulted + 7. echo 'deb http://archive.ubuntu.com/ubuntu precise-proposed main' | tee -a /etc/apt/sources.list + 8. apt-get update + 9. apt-get install libgdk-pixbuf2.0-0/precise-proposed + 10. /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders # or your arch here + # that should have worked + + [ Original description ] + In two machines I had errors in the upgrade from Precise to Raring. Preparing to replace librsvg2-2:i386 2.36.3-0ubuntu1 (using .../librsvg2-2_2.36.4-1_i386.deb) ... Unpacking replacement librsvg2-2:i386 ... Processing triggers for libgdk-pixbuf2.0-0:i386 ... Segmentation fault (core dumped) Processing triggers for libgdk-pixbuf2.0-0:amd64 ... Segmentation fault (core dumped) Setting up librsvg2-2:i386 (2.36.4-1) ... Setting up librsvg2-2:amd64 (2.36.4-1) ... Setting up librsvg2-common:i386 (2.36.4-1) ... Setting up librsvg2-common:amd64 (2.36.4-1) ... Processing triggers for libc-bin ... ldconfig deferred processing now taking place Processing triggers for libgdk-pixbuf2.0-0:i386 ... Segmentation fault (core dumped) Processing triggers for libgdk-pixbuf2.0-0:amd64 ... Segmentation fault (core dumped) - (Reading database ... + (Reading database ... (Reading database ... 5% (Reading database ... 10% I guess that due to that error, the gdk-pixbuf-query-loaders crashes later in the installation process. ProblemType: Bug DistroRelease: Ubuntu 13.04 Package: libgdk-pixbuf2.0-0 2.28.0-0ubuntu1 ProcVersionSignature: Ubuntu 3.5.0-27.46-generic 3.5.7.7 Uname: Linux 3.5.0-27-generic x86_64 NonfreeKernelModules: nvidia ApportVersion: 2.9.2-0ubuntu8 Architecture: amd64 Date: Mon Apr 29 12:17:40 2013 InstallationDate: Installed on 2009-11-25 (1251 days ago) InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027) MarkForUpload: True SourcePackage: gdk-pixbuf UpgradeStatus: Upgraded to raring on 2013-04-29 (0 days ago)
** Also affects: gdk-pixbuf (Ubuntu Precise) Importance: Undecided Status: New ** Changed in: gdk-pixbuf (Ubuntu) Status: Confirmed => Fix Released -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to gdk-pixbuf in Ubuntu. https://bugs.launchpad.net/bugs/1174253 Title: Segfault (core dumped) in gdk-pixbuf on upgrade Status in pixbuf library for gtk+: Unknown Status in “gdk-pixbuf” package in Ubuntu: Fix Released Status in “gdk-pixbuf” source package in Precise: New Bug description: [ Description ] In the Raring cycle, libgobject gained a global constructor. If a dynamically loaded module (by gdk-pixbuf-query-modules, which is called by a postinst trigger in this package, so quite common on upgrades) happens to dlclose() libgobject then we get this crash. This can easily happen in dist-upgrades if you get unlucky with the ordering. [ Proposed fix ] Build with -Wl,--no-as-needed to ensure we get linked against libgobject even though we use none of its symbols. In later glib & gdk-pixbuf releases, there's a function g_type_ensure() which is used for this purpose, but we don't have that in 12.04. [ Development Fix ] Described above: g_type_ensure() is used. [ Regression potential ] Not sure. The library will now be linked against more things so it could be a bit slower to initialise. [ QA ] 1. Be in a precise chroot without precise-proposed 2. apt-get install libgdk-pixbuf2.0-0 3. sed -i 's/precise/trusty/' /etc/apt/sources.list 4. apt-get update 5. apt-get install libglib2.0-0 6. /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders # or your arch here # that should have segfaulted 7. echo 'deb http://archive.ubuntu.com/ubuntu precise-proposed main' | tee -a /etc/apt/sources.list 8. apt-get update 9. apt-get install libgdk-pixbuf2.0-0/precise-proposed 10. /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders # or your arch here # that should have worked [ Original description ] In two machines I had errors in the upgrade from Precise to Raring. Preparing to replace librsvg2-2:i386 2.36.3-0ubuntu1 (using .../librsvg2-2_2.36.4-1_i386.deb) ... Unpacking replacement librsvg2-2:i386 ... Processing triggers for libgdk-pixbuf2.0-0:i386 ... Segmentation fault (core dumped) Processing triggers for libgdk-pixbuf2.0-0:amd64 ... Segmentation fault (core dumped) Setting up librsvg2-2:i386 (2.36.4-1) ... Setting up librsvg2-2:amd64 (2.36.4-1) ... Setting up librsvg2-common:i386 (2.36.4-1) ... Setting up librsvg2-common:amd64 (2.36.4-1) ... Processing triggers for libc-bin ... ldconfig deferred processing now taking place Processing triggers for libgdk-pixbuf2.0-0:i386 ... Segmentation fault (core dumped) Processing triggers for libgdk-pixbuf2.0-0:amd64 ... Segmentation fault (core dumped) (Reading database ... (Reading database ... 5% (Reading database ... 10% I guess that due to that error, the gdk-pixbuf-query-loaders crashes later in the installation process. ProblemType: Bug DistroRelease: Ubuntu 13.04 Package: libgdk-pixbuf2.0-0 2.28.0-0ubuntu1 ProcVersionSignature: Ubuntu 3.5.0-27.46-generic 3.5.7.7 Uname: Linux 3.5.0-27-generic x86_64 NonfreeKernelModules: nvidia ApportVersion: 2.9.2-0ubuntu8 Architecture: amd64 Date: Mon Apr 29 12:17:40 2013 InstallationDate: Installed on 2009-11-25 (1251 days ago) InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027) MarkForUpload: True SourcePackage: gdk-pixbuf UpgradeStatus: Upgraded to raring on 2013-04-29 (0 days ago) To manage notifications about this bug go to: https://bugs.launchpad.net/gdk-pixbuf/+bug/1174253/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : desktop-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp