purple-mm-sms issueshttps://source.puri.sm/Librem5/purple-mm-sms/-/issues2021-03-04T09:49:43Zhttps://source.puri.sm/Librem5/purple-mm-sms/-/issues/23Segmentation fault in `device_match_by_obejct`2021-03-04T09:49:43ZGuido GuntherSegmentation fault in `device_match_by_obejct`Chatty crashes a lot like
```
(gdb) bt
#0 0x0000ffff6e79f644 in device_match_by_object (device=0x100000002, object=0xffff680065b0) at mm-sms.c:770
#1 0x0000ffff8e32b9c4 in g_ptr_array_find_with_equal_func (haystack=0xaaaaef761920, nee...Chatty crashes a lot like
```
(gdb) bt
#0 0x0000ffff6e79f644 in device_match_by_object (device=0x100000002, object=0xffff680065b0) at mm-sms.c:770
#1 0x0000ffff8e32b9c4 in g_ptr_array_find_with_equal_func (haystack=0xaaaaef761920, needle=0xffff680065b0, equal_func=0xffff6e79f594 <device_match_by_object>, index_=0xffffcec57e34)
at ../../../glib/garray.c:2162
#2 0x0000ffff6e79fa10 in cb_object_removed (manager=0xaaaaefca8300, object=0xffff680065b0, user_data=0x0) at mm-sms.c:843
#6 0x0000ffff8e47c098 in <emit signal 0xffff8e64c258 "object-removed" on instance 0xaaaaefca8300 [MMManager]>
(instance=instance@entry=0xaaaaefca8300, detailed_signal=detailed_signal@entry=0xffff8e64c258 "object-removed") at ../../../gobject/gsignal.c:3591
#3 0x0000ffff8e462018 in g_closure_invoke
(closure=0xaaaaef5bce30, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0xffffcec58020, invocation_hint=invocation_hint@entry=0xffffcec57fe8)
at ../../../gobject/gclosure.c:810
#4 0x0000ffff8e4759e4 in signal_emit_unlocked_R
(node=node@entry=0xffff74001790, detail=detail@entry=0, instance=instance@entry=0xaaaaefca8300, emission_return=emission_return@entry=0x0, instance_and_params=0xffffcec58020, instance_and_params@entry=0x0)
at ../../../gobject/gsignal.c:3739
#5 0x0000ffff8e47b898 in g_signal_emit_valist (instance=instance@entry=0xaaaaefca8300, signal_id=signal_id@entry=42, detail=detail@entry=0, var_args=...) at ../../../gobject/gsignal.c:3495
#7 0x0000ffff8e5fb19c in remove_interfaces (interface_names=0xaaaaef5c0a90, object_path=0xaaaaef5696b0 "/org/freedesktop/ModemManager1/Modem/6", manager=0xaaaaefca8300 [MMManager])
at ../../../gio/gdbusobjectmanagerclient.c:1665
#8 on_control_proxy_g_signal (proxy=<optimized out>, sender_name=<optimized out>, signal_name=<optimized out>, parameters=<optimized out>, user_data=<optimized out>)
at ../../../gio/gdbusobjectmanagerclient.c:1749
#12 0x0000ffff8e47be90 in <emit signal ??? on instance 0xaaaaefb912d0 [GDBusProxy]> (instance=instance@entry=0xaaaaefb912d0, signal_id=<optimized out>, detail=detail@entry=0) at ../../../gobject/gsignal.c:3551
#9 0x0000ffff8e462018 in g_closure_invoke
(closure=0xffff680077e0, return_value=return_value@entry=0x0, n_param_values=4, param_values=param_values@entry=0xffffcec58560, invocation_hint=invocation_hint@entry=0xffffcec58528)
at ../../../gobject/gclosure.c:810
#10 0x0000ffff8e4759e4 in signal_emit_unlocked_R
(node=node@entry=0xaaaaef536720, detail=detail@entry=0, instance=instance@entry=0xaaaaefb912d0, emission_return=emission_return@entry=0x0, instance_and_params=0xffffcec58560, instance_and_params@entry=0x0)
at ../../../gobject/gsignal.c:3739
#11 0x0000ffff8e47b898 in g_signal_emit_valist (instance=instance@entry=0xaaaaefb912d0, signal_id=<optimized out>, detail=detail@entry=0, var_args=...) at ../../../gobject/gsignal.c:3495
#13 0x0000ffff8e5e9f90 in on_signal_received
(connection=<optimized out>, sender_name=0xffff7802f9b0 ":1.12", object_path=<optimized out>, interface_name=<optimized out>, signal_name=0xffff78021910 "InterfacesRemoved", parameters=0xffff7803c500, user_data=<optimized out>) at ../../../gio/gdbusproxy.c:884
#14 0x0000ffff8e5d63c8 in emit_signal_instance_in_idle_cb (data=0xffff7803cba0) at ../../../gio/gdbusconnection.c:3789
#15 0x0000ffff8e35dab4 in g_main_dispatch (context=0xaaaaef529a40) at ../../../glib/gmain.c:3325
#16 g_main_context_dispatch (context=0xaaaaef529a40) at ../../../glib/gmain.c:4043
#17 0x0000ffff8e35de5c in g_main_context_iterate (context=context@entry=0xaaaaef529a40, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4119
#18 0x0000ffff8e35df24 in g_main_context_iteration (context=context@entry=0xaaaaef529a40, may_block=may_block@entry=1) at ../../../glib/gmain.c:4184
#19 0x0000ffff8e5abac8 in g_application_run (application=0xaaaaef528100 [ChattyApplication], argc=<optimized out>, argv=0xffffcec58bb8) at ../../../gio/gapplication.c:2559
#20 0x0000aaaabca877c8 in main ()
```
on byzantium (
This happens up to point where `gnome-session` gives up and one doesn't have chatty running and hence misses SMS, etc. hence flagging as important.
```
# dpkg -s purple-mm-sms
Package: purple-mm-sms
Status: install ok installed
Priority: optional
Section: net
Installed-Size: 73
Maintainer: DebianOnMobile Maintainers <debian-on-mobile-maintainers@alioth-lists.debian.net>
Architecture: arm64
Version: 0.1.7-1
Depends: libc6 (>= 2.17), libglib2.0-0 (>= 2.53.2), libmm-glib0 (>= 1.7.990), libpurple0 (>= 2.6.0), modemmanager
Description: libpurple plugin for SMS
Plugin for libpurple which adds the ability to communicate via
SMS using ModemManager.
Homepage: https://source.puri.sm/Librem5/purple-mm-sms
```