linuxmint / xviewer

A generic Image viewer
GNU General Public License v2.0
75 stars 37 forks source link

Segfault when launching Xviewer #145

Closed poldon closed 1 year ago

poldon commented 3 years ago
 * Xviewer version (xviewer --version): Xviewer 2.8.3
 * Distribution - (Mint 17.2, Arch, Fedora 25, etc...): Mint 20.1

Issue Xviewer logs several errors to the console and then segfaults when launching. If I reboot, the issue goes away. This happens quite often on my machine.

Steps to reproduce

  1. Launch Xviewer. This happens whether I launch from the shell or from Nemo.

Expected behaviour Xviewer should launch cleanly.

Other information Here is the stack trace from GDB:

#0  0x00007ffff7535160 in g_type_check_instance_is_a () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#1  0x00007ffff708634a in gdk_visual_get_screen () at /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#2  0x00007ffff708c307 in gdk_window_new () at /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#3  0x00007ffff106271a in  () at /usr/lib/x86_64-linux-gnu/libclutter-1.0.so.0
#4  0x00007ffff10cd850 in  () at /usr/lib/x86_64-linux-gnu/libclutter-1.0.so.0
#5  0x00007ffff750d802 in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#6  0x00007ffff7520f96 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#7  0x00007ffff752cbbe in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#8  0x00007ffff752d0f3 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#9  0x00007ffff1070b8a in clutter_actor_realize () at /usr/lib/x86_64-linux-gnu/libclutter-1.0.so.0
#10 0x00007ffff10d28f3 in  () at /usr/lib/x86_64-linux-gnu/libclutter-1.0.so.0
#11 0x00007ffff10cd943 in  () at /usr/lib/x86_64-linux-gnu/libclutter-1.0.so.0
#12 0x00007ffff7513a54 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff7514b45 in g_object_new_with_properties () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff75156f1 in g_object_new () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff118efea in  () at /usr/lib/x86_64-linux-gnu/libclutter-gtk-1.0.so.0
#16 0x00007ffff75341dd in g_type_create_instance () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007ffff751334d in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ffff7514b45 in g_object_new_with_properties () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ffff75156f1 in g_object_new () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007ffff11e2ab8 in  () at /usr/lib/x86_64-linux-gnu/libchamplain-gtk-0.12.so.0
#21 0x00007ffff75341dd in g_type_create_instance () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff751334d in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff7514b45 in g_object_new_with_properties () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff75156f1 in g_object_new () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ffff120c921 in  () at /usr/lib/xviewer/plugins/libmap.so
#26 0x00007ffff5b0eff5 in  () at /usr/lib/x86_64-linux-gnu/libffi.so.7
#27 0x00007ffff5b0e40a in  () at /usr/lib/x86_64-linux-gnu/libffi.so.7
#28 0x00007ffff7564483 in g_callable_info_invoke () at /usr/lib/x86_64-linux-gnu/libgirepository-1.0.so.1
#29 0x00007ffff75657f0 in g_function_info_invoke () at /usr/lib/x86_64-linux-gnu/libgirepository-1.0.so.1
#30 0x00007ffff718543b in  () at /usr/lib/x86_64-linux-gnu/libpeas-1.0.so.0
#31 0x00007ffff7182fed in peas_extension_callv () at /usr/lib/x86_64-linux-gnu/libpeas-1.0.so.0
#32 0x00007ffff7183aa5 in  () at /usr/lib/x86_64-linux-gnu/libpeas-1.0.so.0
#33 0x00007ffff7184394 in peas_extension_set_call_valist () at /usr/lib/x86_64-linux-gnu/libpeas-1.0.so.0
#34 0x00007ffff7184533 in peas_extension_set_call () at /usr/lib/x86_64-linux-gnu/libpeas-1.0.so.0
#35 0x00007ffff7fa0222 in xviewer_window_constructor (type=<optimized out>, n_construct_properties=<optimized out>, construct_params=<optimized out>) at xviewer-window.c:5940
#36 0x00007ffff751326c in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#37 0x00007ffff7515378 in g_object_new_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#38 0x00007ffff75156cd in g_object_new () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#39 0x00007ffff7f9e4a7 in xviewer_window_new (flags=(unknown: 0)) at xviewer-window.c:6041
#40 0x00007ffff7f6967f in xviewer_application_open_file_list (error=<optimized out>, flags=(unknown: 0), timestamp=0, file_list=0x555555681e10 = {...}, application=<optimized out>) at xviewer-application.c:639
#41 xviewer_application_open_file_list (application=<optimized out>, file_list=0x555555681e10 = {...}, timestamp=0, flags=(unknown: 0), error=<optimized out>) at xviewer-application.c:611
#42 0x00007ffff7617502 in  () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#43 0x00007ffff750da56 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#44 0x00007ffff752cb48 in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#45 0x00007ffff752d0f3 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#46 0x00007ffff7673c75 in  () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#47 0x00007ffff7673f52 in g_application_run () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#48 0x00005555555564c5 in main (argc=<optimized out>, argv=<optimized out>) at main.c:133

This is the console output:

(xviewer:460352): Cogl-WARNING **: 22:59:02.050: winsys/cogl-winsys-egl-kms.c:771: Error restoring saved CRTC

** (xviewer:460352): WARNING **: 22:59:02.054: Couldn't load UI resource: The resource at “/org/x/viewer/plugins/exif-display/exif-display.ui” does not exist

(xviewer:460352): GLib-GObject-WARNING **: 22:59:02.054: invalid (NULL) pointer instance

(xviewer:460352): GLib-GObject-CRITICAL **: 22:59:02.054: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

(xviewer:460352): XVIEWER-CRITICAL **: 22:59:02.054: xviewer_sidebar_add_page: assertion 'GTK_IS_WIDGET (main_widget)' failed

(xviewer:460352): Gtk-CRITICAL **: 22:59:02.054: gtk_widget_show_all: assertion 'GTK_IS_WIDGET (widget)' failed
programmer-ceds commented 3 years ago

My comment to your issue #141 applies here - disable the display EXIF plug-in and you will get rid of at least some of the error console messages. Given that parts of the EXIF plug-in seem to be missing you will lose nothing. I suppose there is a possibility it will stop the segfaults occurring.

clefebvre commented 1 year ago

did that help? @poldon

poldon commented 1 year ago

I had rebooted after reporting this, and it has worked fine since. Not sure why, but I'll close this.