pcb-gtk crashed with SIGSEGV in ActionUndo()

Bug #930787 reported by Robert Jordens
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gEDA project
New
Critical
Unassigned
pcb
New
Undecided
Unassigned
pcb (Ubuntu)
Confirmed
Medium
Unassigned

Bug Description

crashed when scrolling around

ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: pcb-gtk 20110918-4
ProcVersionSignature: Ubuntu 3.2.0-10.17-generic 3.2.1
Uname: Linux 3.2.0-10-generic x86_64
ApportVersion: 1.91-0ubuntu1
Architecture: amd64
Date: Sat Feb 11 15:33:20 2012
ExecutablePath: /usr/bin/pcb-gtk
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Beta amd64 (20110901)
ProcCmdline: /usr/bin/pcb /home/username/work/nist/dca/dca.pcb
SegvAnalysis:
 Segfault happened at: 0x4313b0: mov 0x48(%rax),%rdx
 PC (0x004313b0) ok
 source "0x48(%rax)" (0x00000048) not located in a known VMA region (needed readable region)!
 destination "%rdx" ok
SegvReason: reading NULL VMA
Signal: 11
SourcePackage: pcb
StacktraceTop:
 ?? ()
 hid_actionv ()
 ?? ()
 ?? ()
 g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
Title: pcb-gtk crashed with SIGSEGV in hid_actionv()
UpgradeStatus: Upgraded to precise on 2011-12-12 (61 days ago)
UserGroups: adm admin audio cdrom dialout lpadmin plugdev sambashare

Revision history for this message
Robert Jordens (jordens) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 ActionUndo (argc=<optimized out>, argv=<optimized out>, x=<optimized out>, y=<optimized out>) at ../../src/action.c:6208
 hid_actionv (name=<optimized out>, argc=0, argv=0x0) at ../../src/hid/common/actions.c:247
 hid_parse_actionstring (rstr=0x25e1720 "Undo()", require_parens=1 '\001') at ../../src/hid/common/actions.c:331
 ghid_menu_cb (node=<optimized out>, action=<optimized out>) at ../../src/hid/gtk/gui-top-window.c:373
 ghid_menu_cb (action=<optimized out>, node=0x25e16d0) at ../../src/hid/gtk/gui-top-window.c:360

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 pcb (Ubuntu):
importance: Undecided → Medium
summary: - pcb-gtk crashed with SIGSEGV in hid_actionv()
+ pcb-gtk crashed with SIGSEGV in ActionUndo()
tags: removed: need-amd64-retrace
Robert Jordens (jordens)
visibility: private → public
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in pcb (Ubuntu):
status: New → Confirmed
Traumflug (mah-jump-ing)
Changed in geda-project:
importance: Undecided → Critical
Revision history for this message
Traumflug (mah-jump-ing) wrote :

With current Git HEAD, the crashing code is located at line 6286 in src/action.c:

6285: /* save both ends of line */
6286: Crosshair.AttachedLine.Point2.X = ptr2->Point1.X;
6287: Crosshair.AttachedLine.Point2.Y = ptr2->Point1.Y;

Point1 is the result of a previous SearchObjectByLocation(), which is considered to always succeed. Obviously it's not, ptr2 was apparently NULL at crash time.

Judging by code locations the crash seems to happen when in line drawing mode, already drawing a line and then hitting Undo.

Didn't try to reproduce so far, just jotting down findings. What bugs me a bit: the user wrote "when scrolling around", but scrolling shouldn't cause a call to ActionUndo(). Still stacktraces hint into undoing code.

Changed in pcb:
milestone: none → future-bug-fix-release
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.