Crash due to uninitialized memory
With the flatpak provided on flathub, GNOME Music crashes (segfaults) on start when MALLOC_PERTURB_
is set to a non-zero integer (causing memory returned from malloc
and passed to free to be overwritten with the value of the environment variable). Without MALLOC_PERTURB_
, the application starts, but with the following warnings:
$ env MALLOC_PERTURB_=0 flatpak run org.gnome.Music
/usr/lib/python3.7/site-packages/gi/overrides/Gio.py:44: Warning: g_hash_table_iter_next: assertion 'ri->version == ri->hash_table->version' failed
return Gio.Application.run(self, *args, **kwargs)
(org.gnome.Music:2): Grilo-WARNING **: 19:45:30.993: [dleyna] ../src/dleyna/grl-dleyna-servers-manager.c:138: Unable to fetch the list of available servers: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name com.intel.dleyna-server was not provided by any .service files
(org.gnome.Music:2): Tracker-CRITICAL **: 19:45:31.066: tracker_bus_fd_cursor_real_get_string: assertion 'column < n_columns && data != null' failed
(org.gnome.Music:2): Tracker-CRITICAL **: 19:45:31.067: tracker_bus_fd_cursor_real_get_string: assertion 'column < n_columns && data != null' failed
(org.gnome.Music:2): Tracker-CRITICAL **: 19:45:31.073: tracker_bus_fd_cursor_real_get_string: assertion 'column < n_columns && data != null' failed
And when running with MALLOC_PERTURB_
:
$ env MALLOC_PERTURB_=1 flatpak run org.gnome.Music -d
(snip)
19:58:00 DEBUG ||Query.__init__(<Query>)[query.py:46]
19:58:00 DEBUG ||Grilo.songs_available(<Grilo>, <function Window._setup_view.<locals>.songs_available_cb at 0x7fdfaea77400>)[grilo.py:451]
19:58:00 DEBUG | returned None, took 0.197530
19:58:00 DEBUG |NotificationsPopup.__init__(<NotificationsPopup>)[notificationspopup.py:44]
19:58:00 DEBUG ||NotificationsPopup._setup_view(<NotificationsPopup>)[notificationspopup.py:51]
19:58:00 DEBUG |||LoadingNotification.__init__(<LoadingNotification>)[notificationspopup.py:158]
19:58:00 DEBUG |MediaKeys.__init__(<MediaKeys>, <Player>, <Window>)[mediakeys.py:42]
19:58:00 DEBUG ||MediaKeys._init_media_keys_proxy(<MediaKeys>)[mediakeys.py:58]
19:58:00 DEBUG returned None, took 0.237972
19:58:00 DEBUG Grilo._on_source_added(<Grilo>, <Grl.Registry object at 0x7fdfb5ddeab0 (GrlRegistry at 0x55dfb139e250)>, <__gi__.GrlLuaFactorySource object at 0x7fdfae51ce58 (GrlLuaFactorySource at 0x55dfb133f9d0)>)[grilo.py:204]
19:58:00 DEBUG |Grilo._on_source_removed(<Grilo>, <Grl.Registry object at 0x7fdfb5ddeab0 (GrlRegistry at 0x55dfb139e250)>, <__gi__.GrlLuaFactorySource object at 0x7fdfae51ce58 (GrlLuaFactorySource at 0x55dfb133f9d0)>)[grilo.py:248]
GDB backtrace (unfortunately without debug symbols, because I don't know how to install them in the flatpak world)
Thread 1 (LWP 5):
#0 0x00007ffff7b634ee in ?? () from /usr/lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff7121f89 in g_str_equal () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff7154a64 in g_strv_contains () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff325b5fe in ?? () from /app/lib/libgrilo-0.3.so.0
#4 0x00007ffff7261d3d in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#5 0x00007ffff72755a3 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#6 0x00007ffff727e802 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#7 0x00007ffff727ee4f in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#8 0x00007ffff7266484 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#9 0x00007ffff7265d8e in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#10 0x00007ffff7268beb in g_object_thaw_notify () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#11 0x00007ffff6ff67a7 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#12 0x00007ffff6f7f509 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#13 0x00007ffff6f7ff86 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#14 0x00007ffff6fe097b in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#15 0x00007ffff6f7f509 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#16 0x00007ffff6f7ff86 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#17 0x00007ffff6fd575a in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#18 0x00007ffff6f7f509 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#19 0x00007ffff6f7f549 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#20 0x00007ffff7132af8 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007ffff7132ee8 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007ffff7132f7c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007ffff6faa73d in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#24 0x00007ffff750eb9e in ffi_call_unix64 () from /usr/lib/x86_64-linux-gnu/libffi.so.6
#25 0x00007ffff750e55f in ffi_call () from /usr/lib/x86_64-linux-gnu/libffi.so.6
#26 0x00007ffff72ba215 in ?? () from /usr/lib/python3.7/site-packages/gi/_gi.cpython-37m-x86_64-linux-gnu.so
#27 0x00007ffff72c69fc in ?? () from /usr/lib/python3.7/site-packages/gi/_gi.cpython-37m-x86_64-linux-gnu.so
#28 0x00007ffff7d46fb9 in PyObject_Call () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#29 0x00007ffff7d22fc6 in _PyEval_EvalFrameDefault () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#30 0x00007ffff7dfb9ee in _PyEval_EvalCodeWithName () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#31 0x00007ffff7d44df7 in _PyFunction_FastCallKeywords () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#32 0x00007ffff7d25fbd in _PyEval_EvalFrameDefault () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#33 0x00007ffff7d1d3fb in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#34 0x00007ffff7d24af7 in _PyEval_EvalFrameDefault () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#35 0x00007ffff7d1d3fb in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#36 0x00007ffff7d24af7 in _PyEval_EvalFrameDefault () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#37 0x00007ffff7dfb9ee in _PyEval_EvalCodeWithName () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#38 0x00007ffff7dfbc62 in PyEval_EvalCodeEx () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#39 0x00007ffff7dfbc8f in PyEval_EvalCode () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#40 0x00007ffff7e247c4 in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
--Type <RET> for more, q to quit, c to continue without paging--c
#41 0x00007ffff7e26d15 in PyRun_FileExFlags () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#42 0x00007ffff7e26e81 in PyRun_SimpleFileExFlags () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#43 0x00007ffff7e40d68 in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#44 0x00007ffff7e4151f in _Py_UnixMain () from /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
#45 0x00007ffff7af703b in __libc_start_main () from /usr/lib/x86_64-linux-gnu/libc.so.6
#46 0x000055555555509a in _start ()
Let me know if you need any further information.
Edited by Alexis Engelke