GNOME Bugzilla – Bug 784953
GLib-GObject-CRITICAL from GDaemonFileEnumerator
Last modified: 2017-07-24 12:14:06 UTC
Created attachment 355597 [details] valgrind It happens to me with gvfs-1.33.3-1.fc27 from applications which uses synchronous enumerator, downgrade to gvfs-1.33.1-1.fc27 fixes the problem. I suppose it is caused by commit 2eae108. However, I can't reproduce with manually build gvfs 1.33.3 and I have no idea why...
I can reproduce it if it is linked against system version of glib. A reversion of the mentioned commit fixes the issue. I am working on fix...
It seems it causes the following Firefox/Thunderbird crashes when opening file chooser: https://bugzilla.redhat.com/show_bug.cgi?id=1472819
Created attachment 356286 [details] [review] gdaemonfileenumerator: Fix crashes in synchronous enumerator code Commit 2eae108 ported the code to GTask and slightly changed processing. The changes trigger the following criticals and cause crashes of some applications (e.g. Firefox, Thunderbird). GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed Return TRUE from signal handlers in order to prevent further processing of the invocations, which cause the mentioned issues.
Review of attachment 356286 [details] [review]: Looks good to me. Not having the 'return TRUE' will definitely lead to an extra unref due to the way the gdbus-codegen-ed GVfsDBusEnumerator code is laid out.
Attachment 356286 [details] pushed as c155704 - gdaemonfileenumerator: Fix crashes in synchronous enumerator code