Skip to content
This repository was archived by the owner on Sep 8, 2020. It is now read-only.
This repository was archived by the owner on Sep 8, 2020. It is now read-only.

Segfault on start when built against ncurses-6.0 #241

@NiLuJe

Description

@NiLuJe

Observed at least on x86_64 & armv7, the linked output is from the x86_64 box.

(That's a build from the current master, and ncurses ABI 6, FWIW).


htop 1.0.3 aborting. Please report bug at http://hisham.hm/htop

 Please include in your report the following backtrace: 
htop(CRT_handleSIGSEGV+0x35)[0x41765a]
/lib64/libc.so.6(+0x33440)[0x72391429c440]
/lib64/libncursesw.so.6(+0x31597)[0x723914930597]
/lib64/libncursesw.so.6(+0x32bdd)[0x723914931bdd]
/lib64/libncursesw.so.6(doupdate_sp+0x155)[0x7239149326ce]
/lib64/libncursesw.so.6(wrefresh+0x55)[0x723914923faa]
/lib64/libncursesw.so.6(+0x1e680)[0x72391491d680]
/lib64/libncursesw.so.6(_nc_wgetch+0x2ce)[0x72391491dd91]
/lib64/libncursesw.so.6(wgetch+0x2c)[0x72391491e291]
htop(ScreenManager_run+0xc1)[0x40efa6]
htop(main+0x1d8)[0x40a49f]
/lib64/libc.so.6(__libc_start_main+0xf0)[0x7239142897b0]
htop(_start+0x29)[0x406739]

Additionally, in order to make the above backtrace useful,
please also run the following command to generate a disassembly of your binary:

   objdump -d `which htop` > ~/htop.objdump

and then attach the file ~/htop.objdump to your bug report.

Thank you for helping to improve htop!

[1]    9276 abort      htop

What gdb has to say:

Program received signal SIGSEGV, Segmentation fault.
TransformLine (sp=sp@entry=0x118b660, lineno=lineno@entry=8) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/tty/tty_update.c:1261
1261    /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/tty/tty_update.c: No such file or directory.
#0  TransformLine (sp=sp@entry=0x118b660, lineno=lineno@entry=8) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/tty/tty_update.c:1261
        oldPair = 0
        newPair = -1708163072
        firstChar = <optimized out>
        oLastChar = <optimized out>
        nLastChar = <optimized out>
        newLine = 0x11a0460
        oldLine = 0x11e8de0
        n = 22
        attrchanged = false
#1  0x00006f9f99eb9bdd in ClrUpdate (sp=sp@entry=0x118b660) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/tty/tty_update.c:1073
        i = 8
        blank = {attr = 0, chars = L" \000\000\000", ext_color = 0}
        nonempty = 39
#2  0x00006f9f99eba6ce in doupdate_sp (sp=sp@entry=0x118b660) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/tty/tty_update.c:925
        i = <optimized out>
        nonempty = 0
#3  0x00006f9f99eabfaa in wrefresh (win=win@entry=0x1222640) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/base/lib_refresh.c:65
        code = <optimized out>
        sp = <optimized out>
#4  0x00006f9f99ea5680 in recur_wrefresh (win=win@entry=0x1222640) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/base/lib_getch.c:384
No locals.
#5  0x00006f9f99ea5d91 in _nc_wgetch (win=win@entry=0x1222640, result=result@entry=0x7cf235fb3734, use_meta=0) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/base/lib_getch.c:491
        sp = 0x118b660
        ch = <optimized out>
        rc = 0
#6  0x00006f9f99ea6291 in wgetch (win=0x1222640) at /var/tmp/paludis/sys-libs-ncurses-6.0/work/ncurses-6.0/ncurses/base/lib_getch.c:670
        code = <optimized out>
        value = 0
#7  0x000000000040efa6 in ScreenManager_run (this=this@entry=0x1272a40, lastFocus=lastFocus@entry=0x0, lastKey=lastKey@entry=0x0) at ScreenManager.c:191
        prevCh = -1
        result = <optimized out>
        quit = false
        focus = 0
        panelFocus = 0x126ea30
        oldTime = 14395879732.719379
        ch = -1
        closeTimeout = 0
        timedOut = true
        redraw = true
        rescan = false
        sortTimeout = 1
#8  0x000000000040a49f in main (argc=<optimized out>, argv=<optimized out>) at htop.c:234
        lc_ctype = <optimized out>
        flags = {pidWhiteList = 0x0, userId = 4294967295, sortKey = 0, delay = -1, useColors = true}
        ut = 0x11894f0
        pl = 0x11895e0
        settings = 0x118a020
        header = 0x118a6a0
        panel = <optimized out>
        state = {settings = 0x118a020, ut = 0x11894f0, pl = 0x11895e0, panel = 0x126ea30, header = 0x118a6a0}
        scr = 0x1272a40

And here's the objdump of the binary.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions