xfce4-terminal crashed with SIGSEGV in magazine_chain_pop_head()
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xfce4-terminal |
Unknown
|
Unknown
|
|||
xfce4-terminal (Debian) |
Fix Released
|
Unknown
|
|||
xfce4-terminal (Fedora) |
Fix Released
|
Undecided
|
|||
xfce4-terminal (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Saucy |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
When the user opens the encoding menu, xfce4-terminal crashes. This is caused by inappropriate handling of the radio item group used in the menu.
All open xfce4-terminal windows get killed, as they are all the same process. In addition, anything launched from a terminal window, including backgrounded and/or GUI apps, also gets killed. This can lead to a lot of unsaved work getting lost.
The fix does two things: first, simply don't add the non-radio items to the radio item group. Secondly, build the radio item group the way described in the Gtk+ documentation.
[Test Case]
Run xfce4-terminal and click Terminal -> Set Encoding.
[Regression Potential]
Minimal. Currently the crash happens 100% of the time when calling a particular function, and that function is the only one modified by the patch.
The patched xfce4-terminal is available in ppa:a-j-buxton/xfce
--
Tried to open the set encoding menu sub menu under the terminal menu
expected to see a list including UTF-8 bun instead it crashed instead of showing a menu
ProblemType: Crash
DistroRelease: Ubuntu 13.10
Package: xfce4-terminal 0.6.2-3ubuntu1
ProcVersionSign
Uname: Linux 3.10.0-6-generic x86_64
ApportVersion: 2.11-0ubuntu1
Architecture: amd64
Date: Tue Jul 30 20:42:33 2013
ExecutablePath: /usr/bin/
InstallationDate: Installed on 2013-07-27 (3 days ago)
InstallationMedia: Xubuntu 13.10 "Saucy Salamander" - Alpha amd64 (20130727)
MarkForUpload: True
ProcCmdline: xfce4-terminal
ProcEnviron:
LANGUAGE=en_US
PATH=(custom, no user)
XDG_RUNTIME_
LANG=en_US.UTF-8
SHELL=/bin/bash
SegvAnalysis:
Segfault happened at: 0x7f7086d60767 <g_slice_
PC (0x7f7086d60767) ok
source "(%rbx)" (0x00000010) not located in a known VMA region (needed readable region)!
destination "%rax" ok
SegvReason: reading NULL VMA
Signal: 11
SourcePackage: xfce4-terminal
StacktraceTop:
g_slice_alloc () from /lib/x86_
g_slice_alloc0 () from /lib/x86_
?? () from /usr/lib/
?? () from /usr/lib/
g_type_
Title: xfce4-terminal crashed with SIGSEGV in g_slice_alloc()
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
description: | updated |
Changed in xfce4-terminal (Ubuntu): | |
assignee: | nobody → Julian Taylor (jtaylor) |
Changed in xfce4-terminal (Debian): | |
status: | Unknown → New |
Changed in xfce4-terminal (Debian): | |
status: | New → Fix Released |
Changed in xfce4-terminal (Fedora): | |
importance: | Unknown → Undecided |
status: | Unknown → Fix Released |
StacktraceTop: chain_pop_ head (magazine_ chunks= 0x7f708add4660) at /build/ buildd/ glib2.0- 2.37.3/ ./glib/ gslice. c:545 memory_ magazine1_ alloc (tmem=<optimized out>, ix=0) at /build/ buildd/ glib2.0- 2.37.3/ ./glib/ gslice. c:848 mem_size@ entry=16) at /build/ buildd/ glib2.0- 2.37.3/ ./glib/ gslice. c:1007 mem_size@ entry=16) at /build/ buildd/ glib2.0- 2.37.3/ ./glib/ gslice. c:1042 notify_ queue_freeze (object= 0x7f708afe3db0, conditional= conditional@ entry=0) at /build/ buildd/ glib2.0- 2.37.3/ ./gobject/ gobject. c:237
magazine_
thread_
g_slice_alloc (mem_size=
g_slice_alloc0 (mem_size=
g_object_