launchbar, etc: fix segfault
authorHenry Gebhardt <hsggebhardt@gmail.com>
Sat, 27 Jul 2013 15:16:59 +0000 (11:16 -0400)
committerHenry Gebhardt <hsggebhardt@gmail.com>
Sat, 27 Jul 2013 15:16:59 +0000 (11:16 -0400)
commit0792696ea2b07ee5b62614c255705195d006717b
tree76da12ea995bc5f7b209d4a7388a43e2694c6e2f
parentecb2315850696507d5e7340d5b9563899b7971d1
launchbar, etc: fix segfault

Thanks Sharon Kimble for reporting, for lxpanel-0.5.10:

    gdb lxpanel
    GNU gdb (GDB) 7.6 (Debian 7.6-5)
    Copyright (C) 2013 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later
    <http://gnu.org/licenses/gpl.html> This is free software: you are free
    to change and redistribute it. There is NO WARRANTY, to the extent
    permitted by law.  Type "show copying" and "show warranty" for details.
    This GDB was configured as "i486-linux-gnu".
    For bug reporting instructions, please see:
    <http://www.gnu.org/software/gdb/bugs/>...
    Reading symbols from /usr/bin/lxpanel...Reading symbols
    from /usr/lib/debug/.build-id/79/50612c6c55b308d2e55497e7d988531e76c8ad.debug...done.
    done. (gdb) run --log 5 --profile LXDE
    Starting program: /usr/bin/lxpanel --log 5 --profile LXDE
    warning: Could not load shared library symbols for linux-gate.so.1.
    Do you need "set solib-search-path" or "set sysroot"?
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library
    "/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1". tray: another
    systray already running

    Program received signal SIGSEGV, Segmentation fault.
    translate_exec_to_cmd (exec=0x0, icon=0x0, title=0x0,
fpath=0x8161650
    "/home/boudiccas/.local/share/applications/lxde-logout.desktop") at
    misc.c:1196 1196        misc.c: No such file or directory. (gdb) ^CQuit
    (gdb) bt full
    #0  translate_exec_to_cmd (exec=0x0, icon=0x0, title=0x0,
fpath=0x8161650
    "/home/boudiccas/.local/share/applications/lxde-logout.desktop") at
    misc.c:1196 cmd = <optimized out>
    #1  0x080651d6 in
    launchbutton_build_gui (btn=btn@entry=0x81613d0, p=0x815dfb8,
    p=0x815dfb8) at launchbar.c:285 exec = <optimized out>
    icon = 0x0
    title = 0x0
    desktop = 0x808cef0
    desktop_file = 0x8161650
    "/home/boudiccas/.local/share/applications/lxde-logout.desktop" loaded
    = <optimized out> lb = 0x8161328
    button = <optimized out>
    #2  0x0806563e in launchbutton_constructor (fp=0xbffff0dc, p=0x815dfb8)
at launchbar.c:396
    btn = 0x81613d0
    s = {num = 51, len = 256, type = 2,
      str =
    "}\000\000
    }\n\000out.desktop\000\000ut.desktop\n\000op\n\000\214\357\377\277\370\311\016\b\005\000\000\000\210\370\372\26
    7ݔ\223\267\370\311\016\bd\177\244\267%\002\000\000\364_\246\267\370\311\016\bH${\267\000\000\000\000\211\227\24
    2\267\020\000\000\000P\000\000\000\n\000\000\000\210\370\372\267\3---Type
    <return> to continue, or q <return> to quit---q Quit (gdb) quit
    A debugging session is active.

    Inferior 1 [process 5934] will be killed.

    Quit anyway? (y or n) y
src/misc.c
src/plugins/launchbar.c