Menu

#960 lxappearance segfaults if certain Openbox themes are accessed

open
nobody
5
2023-01-05
2022-11-05
Edward
No

Installing certain Openbox themes from https://box-look.org will segfault lxappearance, if they are installed using the Openbox Configuration Manager.

https://www.box-look.org/p/1759708 and https://www.box-look.org/p/1754603 are two of them.

They will be listed in lxappearance (Customize Look and Feel) but if a 'working' theme is already installed and one of the above two are selected, the window closes. If one is selected using Openbox Confuguration Manager and lxappearance is run from the terminal, it displays a segfault. Reason unknown.

Debian unstable (sid) is installed. lxappearance version is 0.6.3-1+b2. openbox version is 3.6.1-10. openbox-lxde-session version is 0.99.2-4. obconf version is 1:2.0.4+git20150213-2+b1. lxappearance-obconf version is 0.23-1+b2

Discussion

  • Mamoru TASAKA

    Mamoru TASAKA - 2023-01-05

    Reproducible

     
  • Mamoru TASAKA

    Mamoru TASAKA - 2023-01-05

    backtrace:

    [tasaka1@localhost ~]$ gdb --args lxappearance
    GNU gdb (GDB) Fedora Linux 12.1-6.fc37
    Copyright (C) 2022 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 "x86_64-redhat-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    <https://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
        <http://www.gnu.org/software/gdb/documentation/>.
    
    (gdb) r
    Starting program: /usr/bin/lxappearance 
    [Thread debugging using libthread_db enabled]
    
    Thread 1 "lxappearance" received signal SIGSEGV, Segmentation fault.
    0x00007fffe8040384 in RrPaintPixmap (h=34, w=87, a=0x555555a20f00) at obrender/render.c:55
    55      if (a->surface.grad == RR_SURFACE_PARENTREL &&
    Missing separate debuginfos, use: dnf debuginfo-install adwaita-gtk2-theme-3.28-15.fc37.x86_64 atk-2.38.0-2.fc37.x86_64 bzip2-libs-1.0.8-12.fc37.x86_64 fontconfig-2.14.1-2.fc37.x86_64 freetype-2.12.1-3.fc37.x86_64 fribidi-1.0.12-2.fc37.x86_64 gdk-pixbuf2-2.42.10-1.fc37.x86_64 graphite2-1.3.14-10.fc37.x86_64 harfbuzz-5.2.0-1.fc37.x86_64 imlib2-1.7.4-3.fc37.x86_64 libICE-1.0.10-9.fc37.x86_64 libSM-1.2.3-11.fc37.x86_64 libXau-1.0.10-1.fc37.x86_64 libXcomposite-0.4.5-8.fc37.x86_64 libXcursor-1.2.1-2.fc37.x86_64 libXdamage-1.1.5-8.fc37.x86_64 libXext-1.3.4-9.fc37.x86_64 libXfixes-6.0.0-4.fc37.x86_64 libXft-2.3.4-3.fc37.x86_64 libXinerama-1.1.4-11.fc37.x86_64 libXrandr-1.5.2-9.fc37.x86_64 libXrender-0.9.10-17.fc37.x86_64 libblkid-2.38.1-1.fc37.x86_64 libbrotli-1.0.9-9.fc37.x86_64 libdatrie-0.2.13-4.fc37.x86_64 libgcc-12.2.1-4.fc37.x86_64 libmount-2.38.1-1.fc37.x86_64 libpng-1.6.37-13.fc37.x86_64 libthai-0.1.29-3.fc37.x86_64 libuuid-2.38.1-1.fc37.x86_64 libxcb-1.13.1-10.fc37.x86_64 libxml2-2.10.3-2.fc37.x86_64 pcre2-10.40-1.fc37.1.x86_64 pixman-0.40.0-6.fc37.x86_64 sssd-client-2.8.2-1.fc37.x86_64 systemd-libs-251.10-588.fc37.x86_64 xz-libs-5.2.5-10.fc37.x86_64 zlib-1.2.12-5.fc37.x86_64
    (gdb) bt
    #0  0x00007fffe8040384 in RrPaintPixmap (h=34, w=87, a=0x555555a20f00) at obrender/render.c:55
    #1  RrPaintPixmap (a=a@entry=0x555555a20f00, w=w@entry=87, h=34) at obrender/render.c:41
    #2  0x00007fffe806fb0c in theme_pixmap_paint (h=<optimized out>, w=87, a=0x555555a20f00) at src/preview.c:52
    #3  preview_menu (theme=0x555555a1c010) at src/preview.c:137
    #4  preview_theme
        (name=<optimized out>, titlelayout=0x55555587d8e0 "NLIMC", active_window_font=<optimized out>, inactive_window_font=<optimized out>, menu_title_font=<optimized out>, menu_item_font=<optimized out>, osd_active_font=0x5555557d9240, osd_inactive_font=0x55555582ec70) at src/preview.c:835
    #5  0x00007fffe8070436 in preview_update_all () at src/preview_update.c:60
    #6  0x00007fffe807197d in theme_load_all () at src/theme.c:242
    #7  0x00007fffe8071ca2 in plugin_load (lxappearance_builder=<optimized out>, app=<optimized out>) at src/main.c:231
    #8  plugin_load (app=<optimized out>, lxappearance_builder=<optimized out>) at src/main.c:152
    #9  0x000055555555eaf6 in plugins_init (builder=0x5555555bd920) at /usr/src/debug/lxappearance-0.6.3-13.D20200807gitd132fdd8.fc37.3.x86_64/lxappearance/src/plugin.c:62
    #10 0x000055555555abcc in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/lxappearance-0.6.3-13.D20200807gitd132fdd8.fc37.3.x86_64/lxappearance/src/lxappearance.c:695
    (gdb) li
    50      if (a->surface.parentx < 0 || a->surface.parenty < 0) {
    51          /* ob_debug("Invalid parent co-ordinates\n"); */
    52          return None;
    53      }
    54  
    55      if (a->surface.grad == RR_SURFACE_PARENTREL &&
    56          (a->surface.parentx >= a->surface.parent->w ||
    57           a->surface.parenty >= a->surface.parent->h))
    58      {
    59          return None;
    (gdb) p a->surface
    $1 = {grad = RR_SURFACE_PARENTREL, relief = RR_RELIEF_FLAT, bevel = RR_BEVEL_1, primary = 0x5555557598c0, secondary = 0x55555564b630, border_color = 0x0, bevel_dark = 0x0, 
      bevel_light = 0x0, interlace_color = 0x0, interlaced = 0, border = 0, parent = 0x0, parentx = 0, parenty = 0, pixel_data = 0x0, bevel_dark_adjust = 0, bevel_light_adjust = 80, 
      split_primary = 0x0, split_secondary = 0x0}
    (gdb) 
    
     

Log in to post a comment.

MongoDB Logo MongoDB