crash in search_bug_patterns()

Bug #77872 reported by Paul Dufresne
26
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Fix Released
Medium
Martin Pitt

Bug Description

Binary package hint: apport

apport-gtk crashed near the end of reporting a bug because firefox did crashed.
Will include /var/crash/_usr_share_apport_apport-gtk.1000.crash.
apport version 0.34 (feisty)

Revision history for this message
Paul Dufresne (paulduf) wrote :
Revision history for this message
Paul Dufresne (paulduf) wrote :

hum, I was going to upload the crash file for Fireforox that was generated just before apport-gtk crashed, but I now realized it is about 27Mb big, not sure it is a good idea to send it.
My CPU is having a hard time feeding gedit to let me look at it right now.

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

The actual crash happens in apport.Report.search_bug_patterns(), but that exception is not propagated to the frontend. Instead of ignoring it, I'd rather like to see the actual exception. In the development version I fixed this to show the actual exception in the thread.

Changed in apport:
assignee: nobody → pitti
status: Unconfirmed → Confirmed
Revision history for this message
Martin Pitt (pitti) wrote :

Paul, can you please copy the current firefox crash report to a place in your home directory, so that you can re-try this with a newer apport version that shows the actual error? After I uploaded a new version I'll give you more instructions. Thank you in advance!

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

This version should give a better error message:

 apport (0.36) feisty; urgency=low
 .
   * gtk/apport-gtk.glade: Restore pulse step of progress bar (this apparently
     got destroyed when saving with Glade 3).
   * gtk/apport-gtk{,.glade}: Terminate the program properly when closing the
     progress dialog instead of exiting with an exception.
   * gtk/apport-gtk: Defer opening of the bug reporting window a bit so that
     it appears on top of the browser window. Also enable the task bar blinking
     for it when it is in the background.
   * gtk/apport-gtk.glade: Restore vertical padding of bug report dialog labels
     (another Glade 3 transition regression).
   * bin/apport-retrace, apport/report.py: Call gdb on InterpreterPath if
     present; calling it on a script does not yield anything useful. Add a test
     case to report.py.
   * debian/apport.init: Use mkdir -p instead of install -d, since install is
     not in /bin. Thanks to Kees Cook for catching this.
   * debian/control: Add missing python-apport dependency 'python-apt', which
     is not caught by ${python:Depends}.
   * gtk/apport-gtk: Catch MemoryError when loading a report and display an
     error dialog instead of just crashing. Closes: LP#76235
   * gtk/apport-gtk: Properly catch exceptions from the bug pattern check
     thread to avoid useless backtraces like in bug #75160.
   * gtk/apport-gtk: Catch exceptions from decoding of damaged reports and
     display an error message instead of crashing. Closes: LP#77149
   * apport/report.py: Add missing import of 'time' to test suite.

Paul, please install this version and then do

  touch /var/crash/*

in a terminal. This should re-raise apport-gtk for the crash report that caused apport-gtk to crash. Can you please attach the new apport-gtk crash report?

Changed in apport:
importance: Undecided → Medium
status: Confirmed → Needs Info
Revision history for this message
Paul Dufresne (paulduf) wrote :

after sudo touch /var/crash/*
hum, I did it a bit wrongly I suppose, I clicked "report a bug" on
apport first. This cause it to make:
/var/crash/_usr_share_apport_apport-gtk.1000.crash (25.4 kb).

Then I clicked "report a bug" on firefox. And then a new crash on gtk-apport have happen, that seems to have overwrite the previous one:
/var/crash/_usr_share_apport_apport-gtk.1000.crash (26.0 kb).

Paul Dufresne (paulduf)
Changed in apport:
status: Needs Info → Confirmed
Revision history for this message
Martin Pitt (pitti) wrote :

Thanks for the new report, it's exactly what I was looking for.

Changed in apport:
status: Confirmed → In Progress
Revision history for this message
Martin Pitt (pitti) wrote :

Fixed in bzr head.

Changed in apport:
status: In Progress → Fix Committed
Revision history for this message
Martin Pitt (pitti) wrote :

 apport (0.42) feisty; urgency=low
 .
   New feature: https://wiki.ubuntu.com/ApportImprovements (kernel interface
   change):
 .
   * bin/apport: Support calling without arguments, to support new semantics
     agreed in the ApportImprovements spec: macro values (in particular, pid
     and signal number) are passed as environment variables.
   * preloadlib/libapport.c: Simulate new kernel behaviour described above.
   * debian/apport.init: Set the kernel's core_pattern sysctl to pipe to apport
     if the edgy-style 'crashdump-helper' sysctl helper does not exist.
 .
   Bug fixes:
 .
   * bin/apport-retrace: Beautify error message when report file is not
     accessible. Closes: LP#79568
   * apport/ui.py: Fix crash in the bug pattern search thread if we could
     not determine a package name. Closes: LP#77872
   * bin/apport: Only unlink the core dump if it still exists. Closes: LP#80866
   * gtk/apport-gtk.glade: Fix expand/fill attributes so that the expander gets
     all the space when resizing the window. Closes: LP#80987
   * problem_report.py, write_mime(): Make sure that multi-line values that go
     to the summary are terminated with a newline.
   * apport/ui.py: Fix error message invocation for reporting cloakroom upload
     failure.
   * problem_report.py, write_mime(): Fix off-by-one comparison of the 'inline
     text' treshold, so that apport's StacktraceTop field appears in bug
     summaries. Also fix a corner case in CR line ending handling. Check both
     things in the test suite.
   * gtk/apport-gtk: Add missing 'import subprocess.'. Closes: LP#81007
   * debian/control: Bump apport's and apport-gtk's dependency to python-apport
     to make sure that apport.ui is available. Closes: LP#81019
   * apport/ui.py: Add missing 'import pwd'. Closes: LP#81033
 .
   Minor improvements:
 .
   * apport/ui.py: Get the cloakroom ticket number from the
     X-Launchpad-Blob-Token HTTP header instead of parsing the resulting page.

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

Duplicates of this bug

Other bug subscribers

Remote bug watches

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