Bug#500103: gpm: aptitude segfaults with latest ncurses

Sven Joachim svenjoac at gmx.de
Thu Sep 25 05:58:55 UTC 2008


Package: gpm
Version: 1.20.4-2
Severity: important

With latest ncurses (5.6+20080920-1) installed, aptitude's UI segfaults
at the Linux console in various actions.  Exiting, suspending and trying
to become root all result in SIGSEGV.  Here is a backtrace from exiting
aptitude:

--8<---------------cut here---------------start------------->8---
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb78806c0 (LWP 7990)]
0xb7655958 in ?? ()
(gdb) bt full
#0  0xb7655958 in ?? ()
No symbol table info available.
#1  0xb7e1777e in enable_gpm_mouse (sp=0xae758b0, enable=0) at /home/user/ncurses/ncurses/base/lib_mouse.c:412
        result = <value optimized out>
#2  0xb7e17da1 in mouse_activate (sp=0xae758b0, on=false) at /home/user/ncurses/ncurses/base/lib_mouse.c:939
No locals.
#3  0xb7e0e35c in endwin () at /home/user/ncurses/ncurses/base/lib_endwin.c:53
No locals.
#4  0xb7d734cf in cwidget::toplevel::suspend_without_signals () at toplevel.cc:1162
        l = {parent = @0xb7df5788, locked = true}
#5  0xb7d736c0 in cwidget::toplevel::suspend () at toplevel.cc:1181
        l = {parent = @0xb7df5788, locked = true}
        act = {__sigaction_handler = {sa_handler = 0x1, sa_sigaction = 0x1}, sa_mask = {__val = {0 <repeats 32 times>}}, sa_flags = 0, sa_restorer = 0}
#6  0xb7d73c3c in cwidget::toplevel::shutdown () at toplevel.cc:1192
        l = {parent = @0xb7df5788, locked = true}
        ev = <value optimized out>
#7  0x080f641d in ui_main () at ui.cc:2764
No locals.
#8  0x0805e65d in main (argc=1, argv=0xbfe38694) at main.cc:759
        p = {ref = 0xbae1ac8}
        status_fname = 0x0
        display_format = {static npos = 4294967295,
  _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xad265b4 "%c%a%M %p# - %d#"}}
        sort_policy = {static npos = 4294967295,
  _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xaba135c "name"}}
        width = {static npos = 4294967295, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>},
    _M_p = 0x824cb04 ""}}
        simulate = false
        download_only = false
        arch_only = false
        update_only = false
        install_only = false
        queue_only = false
        assume_yes = false
        fix_broken = false
        safe_upgrade_no_new_installs = false
        safe_resolver_no_new_installs = false
        safe_resolver_no_new_upgrades = false
        always_use_safe_resolver = false
        disable_columns = false
        safe_resolver_option = false
        full_resolver_option = false
        showvers = false
        showdeps = false
        showsize = false
        showwhy = false
        visual_preview = false
        always_prompt = false
        verbose = 0
        seen_quiet = false
        quiet = 0
        user_tags = {<std::_Vector_base<aptitude::cmdline::tag_application, std::allocator<aptitude::cmdline::tag_application> >> = {
    _M_impl = {<std::allocator<aptitude::cmdline::tag_application>> = {<__gnu_cxx::new_allocator<aptitude::cmdline::tag_application>> = {<No data fields>}, <No
data fields>}, _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}}, <No data fields>}
        curopt = <value optimized out>
        curr_quiet = <value optimized out>
(gdb)
--8<---------------cut here---------------end--------------->8---

Although I have rebuilt gpm with DEB_BUILD_OPTIONS=nostrip, I was not
able to come up with a better backtrace; if you think the bug is in a
different package, please reassign.  The ncurses code in
ncurses/base/lib_mouse.c looks innocent enough:

--8<---------------cut here---------------start------------->8---
	if (!enable && sp->_mouse_active) {
	    /* GPM: close connection to gpm server */
	    my_Gpm_Close();
	    sp->_mouse_active = FALSE;
	    T(("GPM closed"));
	}
--8<---------------cut here---------------end--------------->8---


-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26.5-libata
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gpm depends on:
ii  debconf [debconf-2.0]         1.5.23     Debian configuration management sy
ii  debianutils                   2.30       Miscellaneous utilities specific t
ii  libc6                         2.7-13     GNU C Library: Shared libraries
ii  libgpm2                       1.20.4-2   General Purpose Mouse - shared lib
ii  lsb-base                      3.2-20     Linux Standard Base 3.2 init scrip
ii  ucf                           3.0010     Update Configuration File: preserv

gpm recommends no packages.

gpm suggests no packages.

-- debconf information:
* gpm/responsiveness:
* gpm/repeat_type:
* gpm/append:
* gpm/restart: false
* gpm/sample_rate:
* gpm/type: fups2
* gpm/device: /dev/psaux
* gpm/restart_default: false





More information about the pkg-gpm-devel mailing list