Extracting password protected archives on Xorg exits nautilus
Affected version
- Nightly flatpak: Yes
- Other: Arch Linux nautilus 40.0
Steps to reproduce
- Extract password protected archive of any type from nautilus with either "Extract Here" or "Extract..." options in right click menu on Xorg session.
Current behavior
Nautilus exits with either of these errors:
[xcb] Unknown request in queue while dequeuing
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
nautilus: ../../src/xcb_io.c:163: dequeue_pending_request: Assertion `!xcb_xlib_unknown_req_in_deq' failed.
[xcb] Unknown sequence number while processing reply
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
nautilus: ../../src/xcb_io.c:641: _XReply: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Xlib: sequence lost (0x1525e > 0x526e) in reply type 0x1c!
(org.gnome.NautilusDevel:2): Gdk-WARNING **: 14:10:39.413: The program 'org.gnome.NautilusDevel' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadValue (integer parameter out of range for operation)'.
(Details: serial 21112 error_code 2 request_code 18 (core protocol) minor_code 0)
(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.)
(org.gnome.NautilusDevel:2): Gdk-WARNING **: 14:12:56.893: The program 'org.gnome.NautilusDevel' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadImplementation (server does not implement operation)'.
(Details: serial 29908 error_code 17 request_code 20 (core protocol) minor_code 0)
(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.)
(org.gnome.Nautilus:86396): Gdk-ERROR **: 14:27:39.819: The program 'org.gnome.Nautilus' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadIDChoice (invalid resource ID chosen for this connection)'.
(Details: serial 68182 error_code 14 request_code 53 (core protocol) minor_code 0)
(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.)
(org.gnome.Nautilus:86396): Gdk-ERROR **: 14:27:39.819: The program 'org.gnome.Nautilus' 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 68192 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.)
Trace/breakpoint trap (core dumped)
Gdk-Message: 14:10:57.855: org.gnome.NautilusDevel: Fatal IO error 11 (Resource temporarily unavailable) on X server :99.0.
Gdk-Message: 14:11:46.387: org.gnome.NautilusDevel: Fatal IO error 0 (Success) on X server :99.0.
Expected behavior
Nautilus doesn't exit and proceeds to ask for a password for the archive, just like it correctly does on wayland session.
Additional information
gnome-autoar log obtained with G_MESSAGES_DEBUG=all printed before one of the errors above:
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: autoar_common_get_basename_remove_extension: test.zip => test
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: autoar_extractor_run: Step 0 Begin
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: autoar_extractor_step_scan_toplevel: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_open_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_open_cb: ARCHIVE_OK
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_read_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_read_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_read_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_read_cb: 0
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.119: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: 0
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_read_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_read_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: 1199
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_read_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_read_cb: 122
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: 1321
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_seek_cb: 0
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_read_cb: called
** (org.gnome.Nautilus:85957): DEBUG: 14:17:24.120: libarchive_read_read_cb: 1321
stack trace obtained with gdb:
#0 0x00007fa67e9ffd98 in g_log_writer_default () at /usr/lib/libglib-2.0.so.0
#1 0x00007fa67e9fbb69 in g_log_structured_array () at /usr/lib/libglib-2.0.so.0
#2 0x00007fa67e9fbd71 in g_log_structured_standard () at /usr/lib/libglib-2.0.so.0
#3 0x00007fa67e19da17 in () at /usr/lib/libgdk-3.so.0
#4 0x00007fa67d301aa5 in _XError () at /usr/lib/libX11.so.6
#5 0x00007fa67d2fe6f8 in () at /usr/lib/libX11.so.6
#6 0x00007fa67d2fe795 in () at /usr/lib/libX11.so.6
#7 0x00007fa67d2ff1ea in _XEventsQueued () at /usr/lib/libX11.so.6
#8 0x00007fa67d2f0a92 in XPending () at /usr/lib/libX11.so.6
#9 0x00007fa67e199446 in () at /usr/lib/libgdk-3.so.0
#10 0x00007fa67e9f5342 in g_main_context_check () at /usr/lib/libglib-2.0.so.0
#11 0x00007fa67ea48a8b in () at /usr/lib/libglib-2.0.so.0
#12 0x00007fa67e9f2781 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#13 0x00007fa67de1c22e in g_application_run () at /usr/lib/libgio-2.0.so.0
#14 0x000055d01b2b60fa in main ()