• Bug#1102669: linphone-desktop: segfault in registerFont at startup

    From Daniel Kahn Gillmor@21:1/5 to All on Fri Apr 11 20:30:01 2025
    Package: linphone-desktop
    Version: 5.2.6+dfsg-1
    Severity: grave

    I've been using linphone-desktop for years, so i have an existing
    linphone configuration.

    When i recently upgraded from 5.0.2-4+b5 to 5.2.6+dfsg-1, linphone
    declined to start at all with this complaint:

    ```
    0 dkg@bob:~$ linphone
    linphone: error while loading shared libraries: libapp-plugin.so: cannot open shared object file: No such file or directory
    127 dkg@bob:~$
    ```

    After observing that `libapp-plugin.so` ships on amd64 in `/usr/lib/x86_64-linux-gnu/linphone-desktop/libapp-plugin.so` I tried
    starting it like this:

    ```
    0 dkg@bob:~$ LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/linphone-desktop linphone
    QObject::connect: No such signal App::applicationStateChanged(Qt::ApplicationState) in ./linphone-app/src/app/App.cpp:271
    Set TimeZone to "America/New_York"
    Segmentation fault
    139 dkg@bob:~$
    ```

    After installing `linphone-desktop-dbgsym` and some other `-dbgsym`
    packages, i tried again under the debugger:

    ```
    0 dkg@bob:~$ LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/linphone-desktop gdb linphone
    GNU gdb (Debian 16.2-8) 16.2
    Copyright (C) 2024 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    Type "show copying" and "show warranty" for details.
    This GDB was configured as "x86_64-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see: <https://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from linphone...
    Reading symbols from /usr/lib/debug/.build-id/c0/10f0a4cfdba7d00b7fe025b8ca8561b99d60d1.debug...
    (gdb) run
    Starting program: /usr/bin/linphone
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". QObject::connect: No such signal App::applicationStateChanged(Qt::ApplicationState) in ./linphone-app/src/app/App.cpp:271
    Set TimeZone to "America/New_York"

    Program received signal SIGSEGV, Segmentation fault.
    0x00007ffff5639974 in registerFont (fnt=0x7fffffffe150) at text/qfontdatabase.cpp:1051
    warning: 1051 text/qfontdatabase.cpp: No such file or directory
    (gdb) bt
    #0 0x00007ffff5639974 in registerFont (fnt=0x7fffffffe150) at text/qfontdatabase.cpp:1051
    #1 QFontDatabasePrivate::addAppFont (this=this@entry=0x7ffff5b0e5c0 <(anonymous namespace)::Q_QGS_privateDb::innerFunction()::holder>, fontData=..., fileName=...) at text/qfontdatabase.cpp:2482
    #2 0x00007ffff563d113 in QFontDatabase::addApplicationFont (fileName=...) at text/qfontdatabase.cpp:2534
    #3 0x0000555555682bb3 in AppController::AppController (this=this@entry=0x7fffffffe3c8, argc=@0x7fffffffe3bc: 1, argc@entry=@0x7fffffffe3bc: <optimized out>, argv=0x7fffffffe558) at ./linphone-app/src/app/AppController.cpp:99
    #4 0x00005555556003d9 in main (argc=<optimized out>, argv=<optimized out>) at ./linphone-app/src/app/main.cpp:78
    (gdb) quit
    A debugging session is active.

    Inferior 1 [process 2763942] will be killed.

    Quit anyway? (y or n) y
    0 dkg@bob:~$
    ```

    I'm not sure what to make of this, but i do know that i can't use
    linphone at all right now :(

    I tried making a backup of ~/.linphone* and ~/.config/linphone and
    moving them out of the way to see whether linphone would start from a
    fresh configuration, and it still crashed in the same way, so i don't
    think my configuration is the issue.

    Please let me know if you'd like me to run any additional debugging
    tests.

    Thanks for maintaining linphone in debian!

    --dkg


    -- System Information:
    Debian Release: trixie/sid
    APT prefers testing-debug
    APT policy: (500, 'testing-debug'), (500, 'testing'), (200, 'unstable-debug'), (200, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
    Architecture: amd64 (x86_64)

    Kernel: Linux 6.12.21-amd64 (SMP w/20 CPU threads; PREEMPT)
    Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
    Shell: /bin/sh linked to /usr/bin/dash
    Init: systemd (via /run/systemd/system)
    LSM: AppArmor: enabled

    Versions of packages linphone-desktop depends on:
    ii libbctoolbox2 5.3.105-1
    ii libbelcard1 5.3.105-3
    ii libc6 2.41-6
    ii libgcc-s1 14.2.0-19
    ii liblinphone++12 5.3.105-5
    ii liblinphone12 5.3.105-5
    ii libmediastreamer2-14 1:5.3.105+dfsg-5
    ii libqt5core5t64 5.15.15+dfsg-5
    ii libqt5dbus5t64 5.15.15+dfsg-5
    ii libqt5gui5t64 5.15.15+dfsg-5
    ii libqt5multimedia5 5.15.15-2
    ii libqt5network5t64 5.15.15+dfsg-5
    ii libqt5qml5 [qtdeclarative-abi-5-15-15] 5.15.15+dfsg-3
    ii libqt5quick5 5.15.15+dfsg-3
    ii libqt5quickcontrols2-5 5.15.15+dfsg-2
    ii libqt5svg5 5.15.15-2
    ii libqt5texttospeech5 5.15.15-2
    ii libqt5widgets5t64 5.15.15+dfsg-5
    ii libstdc++6 14.2.0-19
    ii linphone-common 5.3.105-5
    ii qml-module-qt-labs-platform 5.15.15+dfsg-2
    ii qml-module-qtgraphicaleffects 5.15.15-2
    ii qml-module-qtquick-controls 5.15.15-2
    ii qml-module-qtquick-controls2 5.15.15+dfsg-2
    ii qml-module-qtquick-dialogs 5.15.15-2
    ii qml-module-qtquick-layouts 5.15.15+dfsg-3
    ii qml-module-qtquick-shapes 5.15.15+dfsg-3
    ii qml-module-qtquick-window2 5.15.15+dfsg-3
    ii qml-module-qtquick2 5.15.15+dfsg-3

    Versions of packages linphone-desktop recommends:
    pn qt5-gtk2-platformtheme <none>

    linphone-desktop suggests no packages.

    -- no debconf information

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iHUEARYKAB0WIQRjrBGOWy5dZsiKhad4C4VO2cK0lgUCZ/ldaQAKCRB4C4VO2cK0 lro7AQD0EgnuSvPCpgYaUfDgF7Ko+yJyBWGE2WyA/BD678KuMAEAlV4DUaqg4SAM OeMM0HJyRSknlYYPkVF+9B5HgTOv7wE�F3
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)