https://bugs.kde.org/show_bug.cgi?id=496489

            Bug ID: 496489
           Summary: Crash with segmentation fault when browsing settings
                    for a newly created account.
    Classification: Applications
           Product: NeoChat
           Version: 24.08.2
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: General
          Assignee: fe...@posteo.de
          Reporter: felics-...@kettenbruch.de
                CC: c...@carlschwan.eu, j...@redstrate.com
  Target Milestone: ---

Created attachment 175971
  --> https://bugs.kde.org/attachment.cgi?id=175971&action=edit
Terminal output of a GDB run of NeoChat.

Here:
https://github.com/quotient-im/libQuotient/issues/828#issuecomment-2480554133 I
was told that this is a NeoChat issue, to I report it here.

---

SUMMARY

If I add a new account, then click a bit in the settings, a segmentation fault
happens.

It does not happen anymore when I restart NeoChat afterwards and log in with
the already created account.

But if I add a new account and then click in the settings, it happens again:

It happened twice, each time after logging in with a new account and going
"somewhere" (I do not remember exactly where first and in which order) into the
settings just after logging in with the new account.

GDB backtrace:

```
#0  0x00007ffff4bad9ef in ??? () at /usr/lib/libQt6Core.so.6
#1  0x000055555578493e in NeoChatConnection::errorOccured (this=this@entry=0x0,
_t1=...) at
/usr/src/debug/neochat-debug-git/build/src/neochat_autogen/include/moc_neochatconnection.cpp:689
#2  0x000055555591af40 in operator() (__closure=0x555556cca4e0, error=...) at
/usr/src/debug/neochat-debug-git/neochat/src/login.cpp:88
#3  operator() (__closure=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:141
#4  QtPrivate::FunctorCallBase::call_internal<void,
QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2, 3>,
QtPrivate::List<QString, QString, int, int>, void,
LoginHelper::init()::<lambda(QString, const QString&, int, int)>
>::call(LoginHelper::init()::<lambda(QString, const QString&, int, int)>&,
void**)::<lambda()> > (args=<optimized out>, fn=<optimized out>)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:65
#5  QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2, 3>,
QtPrivate::List<QString, QString, int, int>, void,
LoginHelper::init()::<lambda(QString, const QString&, int, int)> >::call
    (f=..., arg=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:140
#6  QtPrivate::FunctorCallable<LoginHelper::init()::<lambda(QString, const
QString&, int, int)>, QString, QString, int,
int>::call<QtPrivate::List<QString, QString, int, int>, void>
    (f=..., arg=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:362
#7  QtPrivate::QCallableObject<LoginHelper::init()::<lambda(QString, const
QString&, int, int)>, QtPrivate::List<QString, QString, int, int>,
void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *)
(which=<optimized out>, this_=0x555556cca4d0, r=<optimized out>, a=<optimized
out>, ret=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:572
#8  0x00007ffff4badd9a in ??? () at /usr/lib/libQt6Core.so.6
#9  0x00007ffff6b5bcf9 in Quotient::Connection::networkError
(this=this@entry=0x555556cb7400, _t1=..., _t2=..., _t3=<optimized out>,
_t3@entry=1, _t4=<optimized out>, _t4@entry=0)
    at
/usr/src/debug/libquotient-debug-git/build/QuotientQt6_autogen/include/moc_connection.cpp:1829
#10 0x00007ffff6b5f833 in operator() (__closure=<optimized out>,
retriesTaken=1, nextInMilliseconds=0) at
/usr/src/debug/libquotient-debug-git/libquotient-git/Quotient/connection.cpp:455
#11 operator() (__closure=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:141
#12 QtPrivate::FunctorCallBase::call_internal<void,
QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<int, long
int>, void, Quotient::Connection::sync(int)::<lambda(int, int)>
>::call(Quotient::Connection::sync(int)::<lambda(int, int)>&,
void**)::<lambda()> > (args=<optimized out>, fn=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:65
#13 QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<int,
long int>, void, Quotient::Connection::sync(int)::<lambda(int, int)> >::call
(f=<optimized out>, arg=<optimized out>)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:140
#14 QtPrivate::FunctorCallable<Quotient::Connection::sync(int)::<lambda(int,
int)>, int, long int>::call<QtPrivate::List<int, long>, void> (f=<optimized
out>, arg=<optimized out>)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:362
#15 QtPrivate::QCallableObject<Quotient::Connection::sync(int)::<lambda(int,
int)>, QtPrivate::List<int, long int>, void>::impl(int,
QtPrivate::QSlotObjectBase *, QObject *, void **, bool *)
    (which=<optimized out>, this_=<optimized out>, r=<optimized out>,
a=<optimized out>, ret=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:572
#16 0x00007ffff4badd9a in ??? () at /usr/lib/libQt6Core.so.6
#17 0x00007ffff6b43349 in Quotient::BaseJob::retryScheduled (this=<optimized
out>, _t1=<optimized out>, _t2=<optimized out>)
    at
/usr/src/debug/libquotient-debug-git/build/QuotientQt6_autogen/T4CFEN5LXH/moc_basejob.cpp:510
#18 0x00007ffff4badd9a in ??? () at /usr/lib/libQt6Core.so.6
#19 0x00007ffff4bb6f44 in QTimer::timerEvent(QTimerEvent*) () at
/usr/lib/libQt6Core.so.6
#20 0x00007ffff4b9f569 in QObject::event(QEvent*) () at
/usr/lib/libQt6Core.so.6
#21 0x00007ffff5cfe0b7 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() at /usr/lib/libQt6Widgets.so.6
#22 0x00007ffff4b55f08 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() at /usr/lib/libQt6Core.so.6
#23 0x00007ffff4ccaba9 in QTimerInfoList::activateTimers() () at
/usr/lib/libQt6Core.so.6
#24 0x00007ffff4db3edc in ??? () at /usr/lib/libQt6Core.so.6
#25 0x00007ffff250aeb9 in ??? () at /usr/lib/libglib-2.0.so.0
#26 0x00007ffff256b5d7 in ??? () at /usr/lib/libglib-2.0.so.0
#27 0x00007ffff250a432 in g_main_context_iteration () at
/usr/lib/libglib-2.0.so.0
#28 0x00007ffff4db1358 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /usr/lib/libQt6Core.so.6
#29 0x00007ffff4b61a55 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at
/usr/lib/libQt6Core.so.6
#30 0x00007ffff4b5723a in QCoreApplication::exec() () at
/usr/lib/libQt6Core.so.6
#31 0x00005555555da3b6 in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/neochat-debug-git/neochat/src/main.cpp:307
```

Attached:

Full terminal output of a run of `gdb neochat` (so, it includes NeoChat's own
terminal output).


STEPS TO REPRODUCE

See above.


OBSERVED RESULT

See above.


EXPECTED RESULT

No crash. Settings browse- and editable.


SOFTWARE/OS VERSIONS
Windows: n/a
macOS: n/a
(available in the Info Center app, or by running `kinfo` in a terminal window)
Linux/KDE Plasma: 
KDE Plasma Version: 6.2.3
KDE Frameworks Version: 6.8.0
Qt Version: 6.8.0


Regards!

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to