[Trisquel-devel] dino-im segfaulting on Trisquel GNU/Linux 12.0

Xavier Del Campo Romero xavi92 at disroot.org
Sun May 25 18:49:57 UTC 2025


Hello everyone,

I did a fresh install of Trisquel (KDE flavour) yesterday, after being a 
Kubuntu user for over 10 years. Thank you very much for your hard work 
into maintaining this great distro!

Being a daily XMPP user myself, I installed the dino-im package and I 
noticed it would always segfault on startup. Some quick debugging with 
gdb(1) shows some issue inside libpango. My GTK3-based fork [1] of Dino 
also segfaults inside the same function:

     Thread 1 "dino-im" received signal SIGSEGV, Segmentation fault.
     0x00007ffff7b106f4 in pango_coverage_get () from 
/lib/x86_64-linux-gnu/libpango-1.0.so.0

In order to get more information, I have built libpango from sources 
(obtained via `apt source libpango-1.0-0`) and installed it, so that I 
re-configured my fork to choose that version of libpango instad. Then, I 
found out the reason behind the segmentation fault is a null pointer 
dereference (see `coverage`):

     #0  pango_coverage_get (coverage=0x0, index=84) at 
../pango/pango-coverage.c:183
     183       return PANGO_COVERAGE_GET_CLASS (coverage)->get 
(coverage, index);
     (gdb) bt
     #0  pango_coverage_get (coverage=0x0, index=84) at 
../pango/pango-coverage.c:183
     #1  0x00007ffff6db44fc in pango_font_default_has_char 
(font=<optimized out>, wc=84) at ../pango/fonts.c:1795

Where `coverage` is obtained by the caller, pango_font_default_has_char 
- unfortunately, without any null pointer check. [2] Some more 
source-level debugging shows pango_font_default_has_char is entered with 
a valid pointer for `font`, but pango_language_get_default returns 
NULLas it does not enter the `|g_once_init_enter (&result)` branch. [3]|

At this point, I am unsure whether this is a distribution-specific 
issue, or an actual bug in libpango.

Best regards,

Xavi

[1]: https://gitea.privatedns.org/xavi/dino
[2]: 
https://gitlab.gnome.org/GNOME/pango/-/blob/1.52.1/pango/fonts.c?ref_type=tags#L1794-1795
[3]: 
https://gitlab.gnome.org/GNOME/pango/-/blob/1.52.1/pango/pango-language.c?ref_type=tags#L307


More information about the Trisquel-devel mailing list