Skip to content

Crash with --desktop: "The error was 'BadDrawable (invalid Pixmap or Window parameter)'." #41

Description

@HybridDog

Problem description

I use LXDE on Arch Linux and after updating my system, the desktop background stopped working.
pcmanfm --desktop --profile LXDE crashes with the following messages:


(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: GFileInfo created without standard::edit-name

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: file ../glib/gio/gfileinfo.c: line 1757 (g_file_info_get_edit_name): should not be reached

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: GFileInfo created without standard::size

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: file ../glib/gio/gfileinfo.c: line 1860 (g_file_info_get_size): should not be reached

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: GFileInfo created without standard::is-symlink

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: file ../glib/gio/gfileinfo.c: line 1691 (g_file_info_get_is_symlink): should not be reached

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: GFileInfo created without standard::is-hidden

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: file ../glib/gio/gfileinfo.c: line 1647 (g_file_info_get_is_hidden): should not be reached

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: GFileInfo created without standard::is-backup

(pcmanfm:9182): GLib-GIO-CRITICAL **: 15:19:33.913: file ../glib/gio/gfileinfo.c: line 1669 (g_file_info_get_is_backup): should not be reached

(pcmanfm:9182): Gdk-WARNING **: 15:19:33.928: The program 'pcmanfm' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadDrawable (invalid Pixmap or Window parameter)'.
  (Details: serial 282 error_code 9 request_code 139 (RENDER) minor_code 4)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the GDK_SYNCHRONIZE environment
   variable to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

As a file browser (no --desktop), pcmanfm still works.

Additional Information

package versions:

name version
pcmanfm 1.4.0-2
libfm 1.4.0-2
gdk-pixbuf2 2.44.4-1
gtk3 1:3.24.51-1
libx11 1.8.12-1
lxmenu-data 0.1.6-2
cairo 1.18.4-1
glycin 2.0.7-1

gdb backtrace with _XError breakpoint and GDK_SYNCHRONIZE=1 environment variable:

#0    0x00007ffff7e6e7f0 in _XError (dpy=0x5555555bbb30, rep=0x55555562c980)
                         at /usr/src/debug/libx11/libX11-1.8.12/src/XlibInt.c:1456
#1    0x00007ffff7e6ea40 in handle_error (dpy=0x5555555bbb30, err=0x55555562c980, in_XReply=<optimized out>)
                         at /usr/src/debug/libx11/libX11-1.8.12/src/xcb_io.c:211
#2    0x00007ffff7e6eafd in handle_response (dpy=0x5555555bbb30, response=0x55555562c980, in_XReply=1)
                         at /usr/src/debug/libx11/libX11-1.8.12/src/xcb_io.c:403
#3    0x00007ffff7e708dd in _XReply (dpy=0x5555555bbb30, rep=0x7fffffffc530, extra=0, discard=1)
                         at /usr/src/debug/libx11/libX11-1.8.12/src/xcb_io.c:722
#4    0x00007ffff7e70c57 in XSync (dpy=0x5555555bbb30, discard=0)
                         at /usr/src/debug/libx11/libX11-1.8.12/src/Sync.c:44
#5    0x00007ffff7e70d10 in _XSyncFunction (dpy=<optimized out>)
                         at /usr/src/debug/libx11/libX11-1.8.12/src/Synchro.c:35
#6    0x00007ffff6693491 in XRenderCreatePicture (dpy=0x5555555bbb30, drawable=31457287, format=0x5555556f9680, valuemask=256, attributes=0x7fffffffc5e0)
                         at /usr/src/debug/libxrender/libXrender-0.9.12/src/Picture.c:99
#7    0x00007ffff7466378 in init_source.isra.0 (src=0x555555999db0, dst=<optimized out>)
                         at ../cairo/src/cairo-xlib-source.c:634
#8    0x00007ffff74223d1 in native_source (is_mask=<optimized out>, dst=0x5555559c13e0, pattern=0x7fffffffcf50, extents=0x7fffffffcf0c, sample=<optimized out>, src_x=0x7fffffffc7a0, src_y=0x7fffffffc7d0)
                         at ../cairo/src/cairo-xlib-source.c:864
#9    0x00007ffff74223d1 in _cairo_xlib_source_create_for_pattern (_dst=0x5555559c13e0, pattern=0x7fffffffcf50, is_mask=<optimized out>, extents=0x7fffffffcf0c, sample=<optimized out>, src_x=0x7fffffffc7a0, src_y=0x7fffffffc7d0)
                         at ../cairo/src/cairo-xlib-source.c:1146
#10   0x00007ffff74223d1 in _cairo_xlib_source_create_for_pattern (_dst=0x5555559c13e0, pattern=0x7fffffffcf50, is_mask=<optimized out>, extents=0x7fffffffcf0c, sample=<optimized out>, src_x=0x7fffffffc7a0, src_y=0x7fffffffc7d0)
                         at ../cairo/src/cairo-xlib-source.c:1122
#11   0x00007ffff73e4f0b in composite_aligned_boxes (compositor=0x7ffff74a82c0 <compositor>, extents=0x7fffffffced0, boxes=0x7fffffffcc20)
                         at ../cairo/src/cairo-traps-compositor.c:1292
#12   0x00007ffff73e4f0b in clip_and_composite_boxes (compositor=0x7ffff74a82c0 <compositor>, extents=0x7fffffffced0, boxes=0x7fffffffcc20)
                         at ../cairo/src/cairo-traps-compositor.c:1792
#13   0x00007ffff73e539f in clip_and_composite_boxes (compositor=<optimized out>, extents=<optimized out>, boxes=<optimized out>)
                         at ../cairo/src/cairo-traps-compositor.c:1800
#14   0x00007ffff73e5457 in _cairo_traps_compositor_paint (_compositor=0x7ffff74a82c0 <compositor>, extents=0x7fffffffced0)
                         at ../cairo/src/cairo-traps-compositor.c:2063
#15   0x00007ffff738b691 in _cairo_compositor_paint (compositor=0x7ffff74a82c0 <compositor>, surface=0x5555559c13e0, op=<optimized out>, source=<optimized out>, clip=<optimized out>)
                         at ../cairo/src/cairo-compositor.c:65
#16   0x00007ffff73de82f in _cairo_surface_paint (surface=0x5555559c13e0, op=CAIRO_OPERATOR_SOURCE, source=0x7fffffffd250, clip=0x0)
                         at ../cairo/src/cairo-surface.c:2204
#17   0x00007ffff739357d in _cairo_gstate_fill (gstate=0x5555559a8440, path=0x5555559a87d8)
                         at ../cairo/src/cairo-gstate.c:1348
#18   0x00007ffff73936b6 in _cairo_default_context_fill (abstract_cr=0x5555559a8410)
                         at ../cairo/src/cairo-default-context.c:1080
#19   0x00007ffff73eaa21 in cairo_fill (cr=0x5555559a8410) at ../cairo/src/cairo.c:2428
#20   0x00007ffff7550efe in gdk_window_clear_backing_region (window=0x555555994d40)
                         at ../gtk/gdk/gdkwindow.c:3558
#21   0x00007ffff7550efe in gdk_window_begin_paint_internal (window=0x555555994d40, region=0x0)
                         at ../gtk/gdk/gdkwindow.c:3019
#22   0x00007ffff7550efe in gdk_window_begin_paint_internal (window=0x555555994d40, region=0x5555556fb1d0)
                         at ../gtk/gdk/gdkwindow.c:2930
#23   0x00007ffff7551582 in gdk_window_begin_draw_frame (window=0x555555994d40, region=0x5555556fb1d0)
                         at ../gtk/gdk/gdkwindow.c:3257
#24   0x00007ffff7aeddec in gtk_widget_render (widget=0x55555575cb50, window=0x555555994d40, region=0x5555556fb1d0)
                         at ../gtk/gtk/gtkwidget.c:17609
#25   0x00007ffff7971a24 in gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1847
#26   0x00007ffff7971a24 in gtk_main_do_event (event=<optimized out>) at ../gtk/gtk/gtkmain.c:1694
#27   0x00007ffff753b1c7 in _gdk_event_emit (event=0x7fffffffd630) at ../gtk/gdk/gdkevents.c:73
#28   0x00007ffff753b1c7 in _gdk_event_emit (event=0x7fffffffd630) at ../gtk/gdk/gdkevents.c:67
#29   0x00007ffff754d74f in _gdk_window_process_updates_recurse_helper (window=0x555555994d40, expose_region=<optimized out>)
                         at ../gtk/gdk/gdkwindow.c:3874
#30   0x00007ffff75531c2 in gdk_window_process_updates_internal (window=0x555555994d40)
                         at ../gtk/gdk/gdkwindow.c:4020
#31   0x00007ffff7553412 in gdk_window_process_updates_with_mode (window=<optimized out>, recurse_mode=<optimized out>)
                         at ../gtk/gdk/gdkwindow.c:4215
#32   0x00007ffff7553412 in gdk_window_process_updates_with_mode (window=<optimized out>, recurse_mode=<optimized out>)
                         at ../gtk/gdk/gdkwindow.c:4186
#33   0x00007ffff716dc77 in _g_closure_invoke_va (closure=0x55555598c260, return_value=0x0, instance=0x555555995080, args=0x7fffffffd9c0, n_params=0, param_types=0x0)
                         at ../glib/gobject/gclosure.c:980
#34   0x00007ffff716dc77 in signal_emit_valist_unlocked (instance=0x555555995080, signal_id=33, detail=0, var_args=0x7fffffffd9c0)
                         at ../glib/gobject/gsignal.c:3439
#35   0x00007ffff716dd89 in g_signal_emit_valist (instance=0x555555995080, signal_id=33, detail=0, var_args=0x7fffffffd9c0)
                         at ../glib/gobject/gsignal.c:3278
#36   0x00007ffff716de44 in g_signal_emit (instance=0x555555995080, signal_id=<optimized out>, detail=0)
                         at ../glib/gobject/gsignal.c:3598
#37   0x00007ffff7549461 in _gdk_frame_clock_emit_paint (frame_clock=0x555555995080)
                         at ../gtk/gdk/gdkframeclock.c:657
#38   0x00007ffff7549461 in gdk_frame_clock_paint_idle (data=0x555555995080)
                         at ../gtk/gdk/gdkframeclockidle.c:597
#39   0x00007ffff7534872 in gdk_threads_dispatch (data=0x555555c2af20) at ../gtk/gdk/gdk.c:769
#40   0x00007ffff7043e91 in g_timeout_dispatch (source=0x5555556d3480, callback=<optimized out>, user_data=<optimized out>)
                         at ../glib/glib/gmain.c:5298
#41   0x00007ffff7041f8d in g_main_dispatch (context=0x5555555ff240) at ../glib/glib/gmain.c:3565
#42   0x00007ffff7043657 in g_main_context_dispatch_unlocked (context=0x5555555ff240)
                         at ../glib/glib/gmain.c:4425
#43   0x00007ffff7043657 in g_main_context_iterate_unlocked (context=0x5555555ff240, block=1, dispatch=1, self=<optimized out>)
                         at ../glib/glib/gmain.c:4490
#44   0x00007ffff7043a17 in g_main_loop_run (loop=0x555555c37cc0) at ../glib/glib/gmain.c:4695
#45   0x00007ffff796bc0f in gtk_main () at ../gtk/gtk/gtkmain.c:1332
#46   0x000055555556353a in main (argc=<optimized out>, argv=<optimized out>)
                         at /usr/src/debug/pcmanfm/pcmanfm/src/pcmanfm.c:284

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions