While I'm still not 100% sure why removing the filter works around the issue, I found the cause of it:
In [1] GTK+ is supposed to check whether the file in question exists and someone decided it would be a good idea to pass an UTF-8 encoded path to a function that expects the an ANSI string encoded in the systems codepage...
I reported the issue in gtk2 upstream and submitted a patch [2].
As for gtk3 I was right: It was already fixed "by accident" with an earlier patch [3] (which actually tried to address a different issue).
While I'm still not 100% sure why removing the filter works around the issue, I found the cause of it:
In [1] GTK+ is supposed to check whether the file in question exists and someone decided it would be a good idea to pass an UTF-8 encoded path to a function that expects the an ANSI string encoded in the systems codepage...
I reported the issue in gtk2 upstream and submitted a patch [2].
As for gtk3 I was right: It was already fixed "by accident" with an earlier patch [3] (which actually tried to address a different issue).
[1] https:/ /github. com/GNOME/ gtk/blob/ 35871edb318083b 2d7e4758cbdaad6 109eed60ca/ gtk/gtkrecentma nager.c# L2236 /bugzilla. gnome.org/ show_bug. cgi?id= 787772 /bugzilla. gnome.org/ show_bug. cgi?id= 660730
[2] https:/
[3] https:/