Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-90626

QTextToSpeech crashes app on exit (only on Linux)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P1: Critical
    • 6.4
    • 5.15.2
    • Speech
    • None
    • Linux/Other display system
    • 9e34b54f38102177cfd2400e275d5dcaa39afb50

    Description

      Any applications initializing QTextToSpeech crash upon application exit. This happens on Linux only, Mac-OS and Windows are not affected.

       Note: This can be reproduced by executing the Hello Speech example, no changes are needed to reproduce.

      The crash happens in a secondary thread while the main application is shutting down QTextToSpeech. It looks like the crashing thread is accessing a deleted synchronization object.

      The bug looks similar to https://bugreports.qt.io/browse/QTBUG-55890 but this bug was reported as closed in 5.8.

      This is the thread crashing:

      {{1 _GI__libc_read read.c 26 0x7ffff613f17c }}

      {{2 _GI__libc_read read.c 24 0x7ffff613f17c }}

      {{3 _IO_new_file_underflow libioP.h 948 0x7ffff60c1d1f }}

      {{4 _IO_getdelim iogetdelim.c 73 0x7ffff60b4898 }}

      {{5 ?? 0x7fffe9aa3b39 }}

      {{6 ?? 0x7fffe9aa3d48 }}

      {{7 start_thread pthread_create.c 477 0x7ffff6014609 }}

      8 clone clone.S 95 0x7ffff6150293

      This is what the main thread does at the same time:

      {{1 __pthread_clockjoin_ex pthread_join_common.c 145 0x7ffff6015cd7 }}

      {{2 spd_close 0x7fffe9aa4281 }}

      {{3 QTextToSpeechEngineSpeechd::~QTextToSpeechEngineSpeechd qtexttospeech_speechd.cpp 78 0x7fffe9ac451d }}

      {{4 QTextToSpeechEngineSpeechd::~QTextToSpeechEngineSpeechd qtexttospeech_speechd.cpp 81 0x7fffe9ac4ea9 }}

      {{5 QTextToSpeechPrivate::~QTextToSpeechPrivate qtexttospeech.cpp 88 0x7ffff6c2ef16 }}

      {{6 QTextToSpeechPrivate::~QTextToSpeechPrivate qtexttospeech.cpp 89 0x7ffff6c2ef69 }}

      {{7 QScopedPointerDeleter<QObjectData>::cleanup qscopedpointer.h 60 0x7ffff6707ee6 }}

      {{8 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>>::~QScopedPointer qscopedpointer.h 107 0x7ffff6707ee6 }}

      {{9 QObject::~QObject qobject.cpp 972 0x7ffff6707ee6 }}

      {{10 QTextToSpeech::~QTextToSpeech qtexttospeech.h 54 0x7ffff6c322b7 }}

      {{11 QTextToSpeech::~QTextToSpeech qtexttospeech.h 54 0x7ffff6c322b7 }}

      {{12 QObjectPrivate::deleteChildren qobject.cpp 2104 0x7ffff66fd7c3 }}

      {{13 QWidget::~QWidget qwidget.cpp 1522 0x7ffff7904297 }}

      {{14 MainWindow::~MainWindow mainwindow.h 62 0x55555555a240 }}

      15 main main.cpp 59 0x55555555a001

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              axelspoerl Axel Spoerl
              frodo Jens
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes