Created attachment 830785 [details] Example of file crashing gedit Description of problem: gedit crashes when opening certain files Version-Release number of selected component (if applicable): gedit-3.10.2-1.fc20 How reproducible: always Steps to Reproduce: 1. in cmdline run: gedit file 2. 3. Actual results: (gedit:10060): Gtk-WARNING **: Locale not supported by C library. Using the fallback 'C' locale. ** ERROR:pygi-argument.c:1581:_pygi_argument_to_object: code should not be reached Aborted (core dumped) Expected results: File is opened Additional info: i have LANG=en_US.UTF-8
This bug affects me too for various files. I was also able to reproduce the result with the attached example file. I'm on fully updated f20. Gedit version 3.10.3.
This bug is having huge impact also my work-flow. I use gedit as default text editor and if I have several tabs opened, loading one of such crashing-files, makes all my work disappear. If there is any information I can provide to help solving this bug, please let me know. Not even sure it is a gedit bug or Python gobject bindings bug.
I opened the example file in gedit with gdb. This is what I got: (gdb) run Starting program: /usr/bin/gedit Traceback (most recent call last): File "/usr/share/gdb/auto-load/usr/lib64/libgobject-2.0.so.0.3800.2-gdb.py", line 9, in <module> from gobject import register File "/usr/share/glib-2.0/gdb/gobject.py", line 3, in <module> import gdb.backtrace ImportError: No module named backtrace [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Missing separate debuginfo for /lib64/libgraphite2.so.3 Try: yum --enablerepo='*debug*' install /usr/lib/debug/.build-id/90/82e46860379c3dff9004eb8c9834e50afbb528.debug [New Thread 0x7fffe70fa700 (LWP 14876)] [New Thread 0x7fffdffff700 (LWP 14877)] [New Thread 0x7fffd2939700 (LWP 14878)] Detaching after fork from child process 14879. Detaching after fork from child process 14880. [New Thread 0x7fffd135e700 (LWP 14989)] ** ERROR:pygi-argument.c:1581:_pygi_argument_to_object: code should not be reached Program received signal SIGABRT, Aborted. 0x00007ffff4080c39 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 56 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig); Missing separate debuginfos, use: debuginfo-install GConf2-3.2.6-7.fc20.x86_64 PackageKit-gtk3-module-0.8.16-1.fc20.x86_64 adwaita-gtk3-theme-3.10.0-1.fc20.x86_64 at-spi2-atk-2.10.2-1.fc20.x86_64 at-spi2-core-2.10.2-1.fc20.x86_64 dbus-glib-0.100.2-2.fc20.x86_64 dbus-libs-1.6.12-8.fc20.x86_64 dconf-0.18.0-2.fc20.x86_64 expat-2.1.0-7.fc20.x86_64 fontconfig-2.11.0-1.fc20.x86_64 freetype-2.5.0-4.fc20.x86_64 gvfs-1.18.3-2.fc20.x86_64 harfbuzz-0.9.24-1.fc20.x86_64 hunspell-1.3.2-14.fc20.x86_64 libXau-1.0.8-2.fc20.x86_64 libXcomposite-0.4.4-4.fc20.x86_64 libXcursor-1.1.14-2.fc20.x86_64 libXdamage-1.1.4-4.fc20.x86_64 libXext-1.3.2-2.fc20.x86_64 libXfixes-5.0.1-2.fc20.x86_64 libXi-1.7.2-2.fc20.x86_64 libXinerama-1.1.3-2.fc20.x86_64 libXrandr-1.4.1-2.fc20.x86_64 libXrender-0.9.8-2.fc20.x86_64 libXxf86vm-1.1.3-2.fc20.x86_64 libbluray-0.5.0-2.fc20.x86_64 libcanberra-0.30-4.fc20.x86_64 libcanberra-gtk3-0.30-4.fc20.x86_64 libcroco-0.6.8-3.fc20.x86_64 libdrm-2.4.50-1.fc20.x86_64 libffi-3.0.13-5.fc20.x86_64 libgcc-4.8.2-7.fc20.x86_64 libogg-1.3.0-6.fc20.x86_64 libpng-1.6.3-3.fc20.x86_64 librsvg2-2.40.1-1.fc20.x86_64 libselinux-2.2.1-6.fc20.x86_64 libstdc++-4.8.2-7.fc20.x86_64 libtdb-1.2.12-2.fc20.x86_64 libtool-ltdl-2.4.2-23.fc20.x86_64 libvorbis-1.3.4-1.fc20.x86_64 libwayland-client-1.2.0-3.fc20.x86_64 libwayland-cursor-1.2.0-3.fc20.x86_64 libwayland-server-1.2.0-3.fc20.x86_64 libxcb-1.9.1-3.fc20.x86_64 libxkbcommon-0.3.1-1.fc20.x86_64 mesa-libEGL-9.2.5-1.20131220.fc20.x86_64 mesa-libGL-9.2.5-1.20131220.fc20.x86_64 mesa-libgbm-9.2.5-1.20131220.fc20.x86_64 mesa-libglapi-9.2.5-1.20131220.fc20.x86_64 ncurses-libs-5.9-12.20130511.fc20.x86_64 nss-softokn-freebl-3.15.4-1.fc20.x86_64 pcre-8.33-4.fc20.x86_64 pixman-0.30.0-3.fc20.x86_64 python3-gobject-3.10.2-1.fc20.x86_64 python3-libs-3.3.2-8.fc20.x86_64 systemd-libs-208-9.fc20.x86_64 vte3-0.34.9-1.fc20.x86_64 xz-libs-5.1.2-6alpha.fc20.x86_64 zlib-1.2.8-3.fc20.x86_64 (gdb) bt #0 0x00007ffff4080c39 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 #1 0x00007ffff4082348 in __GI_abort () at abort.c:89 #2 0x00007ffff497e0ed in _g_log_abort () at gmessages.c:255 #3 0x00007ffff499bc97 in g_assertion_message (domain=domain@entry=0x0, file=file@entry=0x7fffde813268 "pygi-argument.c", line=line@entry=1581, func=func@entry=0x7fffde8130f0 "_pygi_argument_to_object", message=message@entry=0xf80bd0 "code should not be reached") at gtestutils.c:2278 #4 0x00007ffff499bcfa in g_assertion_message_expr (domain=0x0, file=0x7fffde813268 "pygi-argument.c", line=1581, func=0x7fffde8130f0 "_pygi_argument_to_object", expr=<optimized out>) at gtestutils.c:2293 #5 0x00007fffde80530d in _pygi_argument_to_object () from /usr/lib64/python3.3/site-packages/gi/_gi.cpython-33m.so #6 0x00007fffde80915b in pygi_signal_closure_marshal () from /usr/lib64/python3.3/site-packages/gi/_gi.cpython-33m.so #7 0x00007ffff4c6a298 in g_closure_invoke (closure=0xf1a320, return_value=return_value@entry=0x0, n_param_values=4, param_values=param_values@entry=0x7fffffffda00, invocation_hint=invocation_hint@entry=0x7fffffffd9a0) at gclosure.c:777 #8 0x00007ffff4c7c601 in signal_emit_unlocked_R (node=node@entry=0xde4650, detail=detail@entry=0, instance=instance@entry=0xc28850, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffda00) at gsignal.c:3656 #9 0x00007ffff4c840f2 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffdbc0) at gsignal.c:3330 #10 0x00007ffff4c843af in g_signal_emit (instance=instance@entry=0xc28850, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3386 #11 0x00007ffff6e6dacc in gtk_text_buffer_emit_insert (buffer=buffer@entry=0xc28850, iter=iter@entry=0xd45138, text=text@entry=0xf77d48 " gsi\304\r\n", len=<optimized out>, len@entry=4) at gtktextbuffer.c:922 #12 0x00007ffff6e6de39 in gtk_text_buffer_insert (buffer=buffer@entry=0xc28850, iter=iter@entry=0xd45138, text=text@entry=0xf77d48 " gsi\304\r\n", len=len@entry=4) at gtktextbuffer.c:953 #13 0x000000000042ff32 in validate_and_insert (stream=stream@entry=0xd451f0, buffer=buffer@entry=0xf77d48 " gsi\304\r\n", count=count@entry=7) at gedit-document-output-stream.c:633 #14 0x00000000004306cf in gedit_document_output_stream_write (stream=<optimized out>, buffer=<optimized out>, count=<optimized out>, cancellable=<optimized out>, error=0x7fffffffde20) at gedit-document-output-stream.c:974 #15 0x00007ffff514573e in g_output_stream_write (stream=0xd451f0, buffer=buffer@entry=0xf77d48, count=count@entry=7, cancellable=cancellable@entry=0x7fffe0015820, error=error@entry=0x7fffffffde20) at goutputstream.c:211 #16 0x000000000042ed31 in write_file_chunk (async=0x72ec20) at gedit-document-loader.c:503 #17 async_read_cb (stream=<optimized out>, res=<optimized out>, async=0x72ec20) at gedit-document-loader.c:610 #18 0x00007ffff51399fa in async_ready_callback_wrapper (source_object=0x7fffc4001430, res=0xcdc340, user_data=0x72ec20) at ginputstream.c:519 #19 0x00007ffff515a0ab in g_task_return_now (task=0xcdc340) at gtask.c:1108 #20 0x00007ffff515a0c9 in complete_in_idle_cb (task=0xcdc340) at gtask.c:1117 #21 0x00007ffff49772a6 in g_main_dispatch (context=0x6ca040) at gmain.c:3066 #22 g_main_context_dispatch (context=context@entry=0x6ca040) at gmain.c:3642 #23 0x00007ffff4977628 in g_main_context_iterate (context=context@entry=0x6ca040, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3713 #24 0x00007ffff49776dc in g_main_context_iteration (context=0x6ca040, context@entry=0x0, may_block=may_block@entry=1) at gmain.c:3774 #25 0x00007ffff517a954 in g_application_run (application=0x6a3100, argc=argc@entry=1, ---Type <return> to continue, or q <return> to quit---^Cargv=argv@entry=0x7Quit (gdb) #0 0x00007ffff4080c39 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 #1 0x00007ffff4082348 in __GI_abort () at abort.c:89 #2 0x00007ffff497e0ed in _g_log_abort () at gmessages.c:255 #3 0x00007ffff499bc97 in g_assertion_message (domain=domain@entry=0x0, file=file@entry=0x7fffde813268 "pygi-argument.c", line=line@entry=1581, func=func@entry=0x7fffde8130f0 "_pygi_argument_to_object", message=message@entry=0xf80bd0 "code should not be reached") at gtestutils.c:2278 #4 0x00007ffff499bcfa in g_assertion_message_expr (domain=0x0, file=0x7fffde813268 "pygi-argument.c", line=1581, func=0x7fffde8130f0 "_pygi_argument_to_object", expr=<optimized out>) at gtestutils.c:2293 #5 0x00007fffde80530d in _pygi_argument_to_object () from /usr/lib64/python3.3/site-packages/gi/_gi.cpython-33m.so #6 0x00007fffde80915b in pygi_signal_closure_marshal () from /usr/lib64/python3.3/site-packages/gi/_gi.cpython-33m.so #7 0x00007ffff4c6a298 in g_closure_invoke (closure=0xf1a320, return_value=return_value@entry=0x0, n_param_values=4, param_values=param_values@entry=0x7fffffffda00, invocation_hint=invocation_hint@entry=0x7fffffffd9a0) at gclosure.c:777 #8 0x00007ffff4c7c601 in signal_emit_unlocked_R (node=node@entry=0xde4650, detail=detail@entry=0, instance=instance@entry=0xc28850, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffda00) at gsignal.c:3656 #9 0x00007ffff4c840f2 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffdbc0) at gsignal.c:3330 #10 0x00007ffff4c843af in g_signal_emit (instance=instance@entry=0xc28850, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3386 #11 0x00007ffff6e6dacc in gtk_text_buffer_emit_insert (buffer=buffer@entry=0xc28850, iter=iter@entry=0xd45138, text=text@entry=0xf77d48 " gsi\304\r\n", len=<optimized out>, len@entry=4) at gtktextbuffer.c:922 #12 0x00007ffff6e6de39 in gtk_text_buffer_insert (buffer=buffer@entry=0xc28850, iter=iter@entry=0xd45138, text=text@entry=0xf77d48 " gsi\304\r\n", len=len@entry=4) at gtktextbuffer.c:953 #13 0x000000000042ff32 in validate_and_insert (stream=stream@entry=0xd451f0, buffer=buffer@entry=0xf77d48 " gsi\304\r\n", count=count@entry=7) at gedit-document-output-stream.c:633 #14 0x00000000004306cf in gedit_document_output_stream_write (stream=<optimized out>, buffer=<optimized out>, count=<optimized out>, cancellable=<optimized out>, error=0x7fffffffde20) at gedit-document-output-stream.c:974 #15 0x00007ffff514573e in g_output_stream_write (stream=0xd451f0, buffer=buffer@entry=0xf77d48, count=count@entry=7, cancellable=cancellable@entry=0x7fffe0015820, error=error@entry=0x7fffffffde20) at goutputstream.c:211 #16 0x000000000042ed31 in write_file_chunk (async=0x72ec20) at gedit-document-loader.c:503 #17 async_read_cb (stream=<optimized out>, res=<optimized out>, async=0x72ec20) at gedit-document-loader.c:610 #18 0x00007ffff51399fa in async_ready_callback_wrapper (source_object=0x7fffc4001430, res=0xcdc340, user_data=0x72ec20) at ginputstream.c:519 #19 0x00007ffff515a0ab in g_task_return_now (task=0xcdc340) at gtask.c:1108 #20 0x00007ffff515a0c9 in complete_in_idle_cb (task=0xcdc340) at gtask.c:1117 #21 0x00007ffff49772a6 in g_main_dispatch (context=0x6ca040) at gmain.c:3066 #22 g_main_context_dispatch (context=context@entry=0x6ca040) at gmain.c:3642 #23 0x00007ffff4977628 in g_main_context_iterate (context=context@entry=0x6ca040, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3713 #24 0x00007ffff49776dc in g_main_context_iteration (context=0x6ca040, context@entry=0x0, may_block=may_block@entry=1) at gmain.c:3774 #25 0x00007ffff517a954 in g_application_run (application=0x6a3100, argc=argc@entry=1, ---Type <return> to continue, or q <return> to quit--- argv=argv@entry=0x7fffffffe118) at gapplication.c:1635 #26 0x0000000000422780 in main (argc=1, argv=0x7fffffffe118) at gedit.c:68 (gdb) quit
(In reply to Luca Cavalli from comment #2) > If there is any information I can provide to help solving this bug, please > let me know. Ciao Luca, the first thing I would try to do is to pinpoing if the problem is related to a specific plugin you are using
It seems to be related to the Trailing Spaces plugin. When I turn it off, the example file does not crash gedit (it just opens with the warning "There was a problem opening the file ..." and it points out that the file has some invalid characters). Other files that previously crashed gedit open just fine. Can anyone confirm this?
I don't have the "trailing spaces" plugin, and when I open the example file gedit does not crash, but shows the "There was a problem opening this file..."
(In reply to paolo borelli from comment #4) > Ciao Luca, the first thing I would try to do is to pinpoing if the problem > is related to a specific plugin you are using Hi Paolo, it was my first thought when I saw python in error message and renamed plugins directories, without success. This time I disabled plugins one-by-one in preferences dialog and... Bingo :) Probably I did something weird the first time I tried. Tomas, on my system the culprit is Multi Edit plugin.
I wonder if this could be due to some changes in pygobject and due to some kind of mismatch between the .pyc files included in the plugins' rpm and a new version of pygobject...
Plugins are stored in /usr/lib64/gedit/plugins/, but first time I tried by renaming directories, I only renamed /usr/share/gedit/plugins and .local/share/gedit/plugins. This explains why I didn't find it was a plugin causing the crash. My rpms are: gedit.x86_64 2:3.10.3-1.fc20 @updates gedit-plugins.x86_64 3.10.1-1.fc20 @updates Anyway, tried to remove all *.pyc and *.pyo files in multiedit folder and recompiled with "python -m compileall ." (is it correct?). Same crash.
OK, I can confirm that the bug is caused by Multi Edit plugin. Once I disable the plugin gedit no longer crashes but detects incorrect character in the file.
This message is a reminder that Fedora 20 is nearing its end of life. Approximately 4 (four) weeks from now Fedora will stop maintaining and issuing updates for Fedora 20. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '20'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 20 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 20 changed to end-of-life (EOL) status on 2015-06-23. Fedora 20 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.