Possible bug in libgtk-3, arandr crashes with SEGFAULT

Hello,
I made a fresh install and after installing i3, I installed arandr, but it doesn’t work.
When I try to run it the output is:


(process:16752): Gtk-CRITICAL **: 10:32:47.904: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(process:16752): Gtk-CRITICAL **: 10:32:47.904: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(process:16752): Gtk-CRITICAL **: 10:32:47.904: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed
Segmentation fault (core dumped)

and dmesg says:


 5054.344709] arandr[16752]: segfault at 18 ip 00007fbd48b986ec sp 00007ffecf4d2a60 error 4 in libgtk-3.so.0.2404.8[7fbd48932000+347000]
 5054.344714] Code: 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 48 8b 7f 10 48 85 ff 74 07 e9 e2 b5 ff ff 66 90 48 83 ec 08 48 89 d7 e8 44 ee e8 ff <48> 8b 40 18 48 8b 78 10 e8 f7 40 f7 ff 48 83 c4 08 48 89 c7 e9 bb

I’m running Tumbleweed snapshot 20191202
uname -a:


Linux Think 5.3.12-1-default #1 SMP Thu Nov 21 07:21:43 UTC 2019 (a6f6081) x86_64 x86_64 x86_64 GNU/Linux

my version of arandr is 0.1.10-14.1 from X11:Utilities

If you can help me debug this or create a feasible bug report, that would be nice.

Thanks,
GS

Just create a bug with a description of your error.
I just ran arandr on a TW and don’t see anything that would be particularly unique about its stderr…

Likely needs to be compiled with current Python 3.7… maybe but necessarily updated GTK libararies but from what I see those might be pulled in by python libraries used…

TSU

Using a combination of ipdb, gdb and a few other tools I was able to determine where exactly in the arandr code the segfault happens. It’s a call to Gtk.Window(). If I try to run it manually:


import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
Gtk.Window()

it segfaults on the last line. I just did an update, so I should have the latest versions of everything available under TW.