apport-gtk crashed with SIGSEGV in composite_line()

Bug #937249 reported by John Markh
660
This bug affects 87 people
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Fix Released
High
Martin Pitt
Precise
Fix Released
High
Martin Pitt

Bug Description

apport-gtk crashes when using the Adwaita theme. I also see this assertion:

(test_ui_gtk.py:3438): GdkPixbuf-CRITICAL **: gdk_pixbuf_composite: assertion `dest_x >= 0 && dest_x + dest_width <= dest->width' failed

TEST CASE:
 - Install gnome-themes-standard
 - Change theme to "Adwaita"
 - generate a crash of an application with an icon, e. g.

   gedit &
   killall -SEGV gedit

 - Wait for apport to pop up
 - apport-gtk crashes.

Alternatively you can also run the apport test suite (test/run ui_gtk), which reproduces this as well under the Adwaita theme.

ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: apport-gtk 1.92-0ubuntu1
ProcVersionSignature: Ubuntu 3.2.0-17.26-generic-pae 3.2.6
Uname: Linux 3.2.0-17-generic-pae i686
ApportVersion: 1.92-0ubuntu1
Architecture: i386
CrashCounter: 1
Date: Mon Feb 20 15:54:30 2012
ExecutablePath: /usr/share/apport/apport-gtk
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha i386 (20120104)
InterpreterPath: /usr/bin/python2.7
PackageArchitecture: all
ProcCmdline: /usr/bin/python /usr/share/apport/apport-gtk
ProcEnviron:
 LANGUAGE=en_CA:en
 PATH=(custom, no user)
 LANG=en_CA.UTF-8
 SHELL=/bin/bash
SegvAnalysis:
 Segfault happened at: 0xb624a4b8: mov %al,(%edi)
 PC (0xb624a4b8) ok
 source "%al" ok
 destination "(%edi)" (0xb54ec21c) in non-writable VMA region: 0xb5409000-0xb57f7000 r--p /usr/share/icons/gnome/icon-theme.cache
SegvReason: writing VMA /usr/share/icons/gnome/icon-theme.cache
Signal: 11
SourcePackage: apport
StacktraceTop:
 ?? () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
 ?? () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
 ?? () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
 gdk_pixbuf_composite () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
 ffi_call_SYSV () from /usr/lib/i386-linux-gnu/libffi.so.6
Title: apport-gtk crashed with SIGSEGV in gdk_pixbuf_composite()
UpgradeStatus: Upgraded to precise on 2012-02-14 (6 days ago)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo

Revision history for this message
John Markh (dragonsol) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 composite_line (weights=0xa5f6800, n_x=2, n_y=2, dest=0xb54ec21c <Address 0xb54ec21c out of bounds>, dest_x=0, dest_end=0xb54ec258 <Address 0xb54ec258 out of bounds>, dest_channels=4, dest_has_alpha=1, src=0xa5fc880, src_channels=4, src_has_alpha=1, x_init=0, x_step=65536, src_width=16, check_size=0, color1=0, color2=0) at pixops.c:637
 pixops_process (dest_buf=0xb54ec21c <Address 0xb54ec21c out of bounds>, render_x0=0, render_y0=0, render_x1=16, render_y1=16, dest_rowstride=192, dest_channels=4, dest_has_alpha=1, src_buf=0xa5f8c00 "", src_width=16, src_height=16, src_rowstride=64, src_channels=4, src_has_alpha=1, scale_x=1, scale_y=1, check_x=0, check_y=0, check_size=0, color1=0, color2=0, filter=0xbfa64098, line_func=0xb624a360 <composite_line>, pixel_func=0xb624b650 <composite_pixel>) at pixops.c:1352
 _pixops_composite_real (overall_alpha=255, interp_type=PIXOPS_INTERP_BILINEAR, scale_y=1, scale_x=<optimized out>, src_has_alpha=1, src_channels=4, src_rowstride=64, src_height=16, src_width=16, src_buf=0xa5f8c00 "", dest_has_alpha=1, dest_channels=4, dest_rowstride=192, render_y1=<optimized out>, render_x1=<optimized out>, render_y0=<optimized out>, render_x0=<optimized out>, dest_buf=0xb54ec21c <Address 0xb54ec21c out of bounds>) at pixops.c:1810
 _pixops_composite (dest_buf=0xb54eae34 <Address 0xb54eae34 out of bounds>, dest_width=48, dest_height=48, dest_rowstride=192, dest_channels=4, dest_has_alpha=1, src_buf=0xa5f8c00 "", src_width=16, src_height=16, src_rowstride=64, src_channels=4, src_has_alpha=1, dest_x=26, dest_y=26, dest_region_width=16, dest_region_height=16, offset_x=26, offset_y=26, scale_x=1, scale_y=1, interp_type=PIXOPS_INTERP_BILINEAR, overall_alpha=255) at pixops.c:1877
 gdk_pixbuf_composite (src=0xa5bd838, dest=0xa5adf50, dest_x=26, dest_y=26, dest_width=16, dest_height=16, offset_x=<optimized out>, offset_y=<optimized out>, scale_x=1, scale_y=1, interp_type=GDK_INTERP_BILINEAR, overall_alpha=255) at gdk-pixbuf-scale.c:214

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in apport (Ubuntu):
importance: Undecided → Medium
summary: - apport-gtk crashed with SIGSEGV in gdk_pixbuf_composite()
+ apport-gtk crashed with SIGSEGV in composite_line()
tags: removed: need-i386-retrace
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in apport (Ubuntu):
status: New → Confirmed
tags: added: bugpattern-needed
Martin Pitt (pitti)
visibility: private → public
Steve Langasek (vorlon)
Changed in apport (Ubuntu):
importance: Medium → High
Revision history for this message
the0hitman (the0hitman-deactivatedaccount) wrote : Re: [Bug 937249] Re: apport-gtk crashed with SIGSEGV in composite_line()

Le mercredi 18 avril 2012 à 15:03 +0000, Steve Langasek a écrit :

> ** Changed in: apport (Ubuntu)
> Importance: Medium => High
>

Thank you

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

Please check if bug 937249 is related and can be duplicated to this one.

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

Sorry, I meant please check if bug 985049 is related to this bug and can be duplicated here.

Revision history for this message
Steve Langasek (vorlon) wrote :

On Wed, Apr 18, 2012 at 04:30:46PM -0000, Walter Garcia-Fontes wrote:
> Sorry, I meant please check if bug 985049 is related to this bug and can
> be duplicated here.

It is not. If it had been, the apport retracer would have automatically
marked it as a duplicate.

Revision history for this message
Steve Langasek (vorlon) wrote :

Martin, this might be something to take a look at, since it prevents people from reporting bugs?

Changed in apport (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
Revision history for this message
Jagadeesh S (sjagadeesh-3edge) wrote :
Download full text (3.2 KiB)

Dear Martin and Steve,

I am a novice to Linux system. I upgraded from Ubuntu 11 to Ubuntu 12. It
was working fine. Later when I went for software upgrade option on the
system, the taskbar (the one that is on the left side of the screen)
disappeared after the upgrade. Due to this I am unable to open even a xterm
to find the issue. The restart option also went missing after the software
upgrade.

Some observations:
This issue does not appear on the Ubuntu 2D, the task bar works well in the
Ubuntu 2D unlike Ubuntu. This issue has been reported earlier on some of
the Ubuntu forums, however I am unable to find the solution to this. I
installed AWN and I am able to work but there are issue like - unable to
work on xterm or awn terminal, compiz error, the browser does not maximize.
If I open change background window, there is no close button and the window
stays back.

I hope this helps you in fixing this bug.

Thanking you,
With regards,
S. Jagadeesh

On Wed, Apr 18, 2012 at 11:32 PM, Steve Langasek <
<email address hidden>> wrote:

> Martin, this might be something to take a look at, since it prevents
> people from reporting bugs?
>
> ** Changed in: apport (Ubuntu)
> Assignee: (unassigned) => Martin Pitt (pitti)
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (984579).
> https://bugs.launchpad.net/bugs/937249
>
> Title:
> apport-gtk crashed with SIGSEGV in composite_line()
>
> Status in “apport” package in Ubuntu:
> Confirmed
>
> Bug description:
> Simple Scan application crashed in the middle of a multi-page scan
> job.
>
> ProblemType: Crash
> DistroRelease: Ubuntu 12.04
> Package: apport-gtk 1.92-0ubuntu1
> ProcVersionSignature: Ubuntu 3.2.0-17.26-generic-pae 3.2.6
> Uname: Linux 3.2.0-17-generic-pae i686
> ApportVersion: 1.92-0ubuntu1
> Architecture: i386
> CrashCounter: 1
> Date: Mon Feb 20 15:54:30 2012
> ExecutablePath: /usr/share/apport/apport-gtk
> InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha i386
> (20120104)
> InterpreterPath: /usr/bin/python2.7
> PackageArchitecture: all
> ProcCmdline: /usr/bin/python /usr/share/apport/apport-gtk
> ProcEnviron:
> LANGUAGE=en_CA:en
> PATH=(custom, no user)
> LANG=en_CA.UTF-8
> SHELL=/bin/bash
> SegvAnalysis:
> Segfault happened at: 0xb624a4b8: mov %al,(%edi)
> PC (0xb624a4b8) ok
> source "%al" ok
> destination "(%edi)" (0xb54ec21c) in non-writable VMA region:
> 0xb5409000-0xb57f7000 r--p /usr/share/icons/gnome/icon-theme.cache
> SegvReason: writing VMA /usr/share/icons/gnome/icon-theme.cache
> Signal: 11
> SourcePackage: apport
> StacktraceTop:
> ?? () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
> ?? () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
> ?? () from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
> gdk_pixbuf_composite () from
> /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
> ffi_call_SYSV () from /usr/lib/i386-linux-gnu/libffi.so.6
> Title: apport-gtk crashed with SIGSEGV in gdk_pixbuf_composite()
> UpgradeStatus: Upgraded to precise on 2012-02-14 (6 days ago)
> UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
>
> To manage notifi...

Read more...

Revision history for this message
Martin Pitt (pitti) wrote :

I have never seen this crash myself, so I suppose something on your system is different. Is there some reporter here who regularly gets this crash? It should happen if you try to report a crash against an application with a desktop file. You can create a fake crash with

  gedit &
  killall -SEGV gedit

Then apport should pop up and show the crash (please do not actually report that). You should see the GEdit icon with a stop sign overlay on it. Can anyone reproduce the crash with that?

Are you using a non-standard theme, or something else than Unity?

Changed in apport (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Juha Siltala (topyli) wrote :

On Fri, Apr 20, 2012 at 17:54, Martin Pitt <email address hidden> wrote:

> Are you using a non-standard theme, or something else than Unity?

I'm using GNOME Shell and Adwaita, everything as close to default
GNOME as i can achieve.

Revision history for this message
Martin Pitt (pitti) wrote :

Thanks for that hint. I can reproduce the crash under GNOME shell and Adwaita theme.

Changed in apport (Ubuntu):
status: Incomplete → In Progress
Martin Pitt (pitti)
description: updated
description: updated
Revision history for this message
Chascon (chascone) wrote :

" gedit &
  killall -SEGV gedit"

... You should see the GEdit icon with a stop sign overlay on it. Can anyone reproduce the crash with that?"

Yes, I can reproduce it and I get the stop sign and icon. I'm running Unity 3D on a precise upgrade using the Ambiance theme today.

Revision history for this message
Martin Pitt (pitti) wrote :

Fixed in trunk r2297.

Changed in apport (Ubuntu Precise):
status: In Progress → Fix Committed
Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello John, or anyone else affected,

Accepted apport into precise-proposed. The package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

tags: added: verification-needed
Revision history for this message
Adolfo Jayme Barrientos (fitojb) wrote :

Can't reproduce the crash anymore with the proposed package, so I'm marking this verification-done.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apport - 2.0.1-0ubuntu6

---------------
apport (2.0.1-0ubuntu6) precise-proposed; urgency=low

  * Cherry-pick from trunk:
    - hookutils.py, recent_logfile(): Use a default limit of 10000 lines and
      call "tail" instead of reading the whole file. This protects against
      using up all memory when there are massive repeated log messages.
      (LP: #984256)
    - apport-gtk: Do not assume that an icon requested for size 42 actually
      delivers size 42; some themes do not have this available and deliver a
      smaller one instead, causing overflows. Also, copy the image as
      gtk_icon_theme_load_icon() returns a readonly result which we must not
      modify. Fixes crashes when using themes other than the standard Ubuntu
      ones. (LP: #937249)
 -- Martin Pitt <email address hidden> Fri, 20 Apr 2012 18:53:24 +0200

Changed in apport (Ubuntu Precise):
status: Fix Committed → Fix Released
Changed in apport (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.