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

            Bug ID: 461137
           Summary: NeoChat crashes when attempting to enter/load the
                    #KDE-QA room
    Classification: Applications
           Product: NeoChat
           Version: unspecified
          Platform: Compiled Sources
                OS: Linux
            Status: REPORTED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: General
          Assignee: fe...@posteo.de
          Reporter: n...@kde.org
                CC: c...@carlschwan.eu
  Target Milestone: ---

Application: neochat (22.09)
 (Compiled from sources)
Qt Version: 5.15.6
Frameworks Version: 5.100.0
Operating System: Linux 5.19.16-200.fc36.x86_64 x86_64
Windowing System: Wayland
Distribution: Fedora Linux 36 (KDE Plasma)
DrKonqi: 5.26.80 [KCrashBackend]

-- Information about the crash:
I used NeoChat to create a new room, #KDE-QA. Now, every time I open the app
and click on the room in the sidebar, NeoChat crashes. It's 100% reproducible.

The crash can be reproduced every time.

-- Backtrace:
Application: NeoChat (neochat), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#5  0x00007ffff4b17dbd in int
indexOf<QLatin1String>(QExplicitlySharedDataPointer<QCborContainerPrivate>
const&, QLatin1String, bool*) () at /lib64/libQt5Core.so.5
#6  0x00007ffff4b1844d in QJsonObject::value(QLatin1String) const () at
/lib64/libQt5Core.so.5
#7  0x00007ffff711b6c6 in QJsonObject::operator[](QLatin1String) const
(key=..., this=<optimized out>) at /usr/include/qt5/QtCore/qjsonobject.h:103
#8  Quotient::RoomEvent::id() const (this=<optimized out>) at
/home/nate/kde/src/libquotient/lib/events/roomevent.cpp:20
#9  0x00007ffff70de7da in
Quotient::Room::notificationFor(Quotient::TimelineItem const&) const
(this=this@entry=0x24bb1f0, ti=...) at
/home/nate/kde/src/libquotient/lib/room.cpp:992
#10 0x00007ffff710e081 in operator() (ti=..., acc=..., __closure=<synthetic
pointer>) at /home/nate/kde/src/libquotient/lib/eventstats.cpp:21
#11
std::accumulate<std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
const Quotient::TimelineItem&, const Quotient::TimelineItem*> >,
Quotient::EventStats, Quotient::EventStats::fromRange(const Quotient::Room*,
const Quotient::Room::rev_iter_t&, const Quotient::Room::rev_iter_t&, const
Quotient::EventStats&)::<lambda(Quotient::EventStats, const
Quotient::TimelineItem&)> > (__binary_op=..., __init=..., __last=...,
__first=...) at /usr/include/c++/12/bits/stl_numeric.h:169
#12 Quotient::EventStats::fromRange(Quotient::Room const*,
std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&,
std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&,
Quotient::EventStats const&) (room=0x24bb1f0, from=..., to=..., init=<optimized
out>) at /home/nate/kde/src/libquotient/lib/eventstats.cpp:18
#13 0x00007ffff710e7ba in
Quotient::EventStats::updateOnMarkerMove(Quotient::Room const*,
std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&,
std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&)
(this=this@entry=0x253f710, room=0x24bb1f0, oldMarker=..., newMarker=...) at
/home/nate/kde/src/libquotient/lib/eventstats.cpp:66
#14 0x00007ffff70e5a91 in
Quotient::Room::Private::setLocalLastReadReceipt(std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&,
Quotient::ReadReceipt, bool) (this=0x253f5d0, newMarker=..., newReceipt=...,
deferStatsUpdate=<optimized out>) at
/home/nate/kde/src/libquotient/lib/room.cpp:771
#15 0x00007ffff70e5dea in Quotient::Room::Private::setFullyReadMarker(QString
const&) (this=0x253f5d0, eventId=<optimized out>) at
/home/nate/kde/src/libquotient/lib/room.cpp:900
#16 0x00007ffff70e681d in
Quotient::Room::Private::updateStats(std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&,
std::reverse_iterator<std::_Deque_iterator<Quotient::TimelineItem,
Quotient::TimelineItem const&, Quotient::TimelineItem const*> > const&)
(this=0x253f5d0, from=..., to=...) at
/home/nate/kde/src/libquotient/lib/room.cpp:808
#17 0x00007ffff70ee7b9 in
Quotient::Room::Private::addHistoricalMessageEvents(std::vector<std::unique_ptr<Quotient::RoomEvent,
std::default_delete<Quotient::RoomEvent> >,
std::allocator<std::unique_ptr<Quotient::RoomEvent,
std::default_delete<Quotient::RoomEvent> > > >&&) (this=0x253f5d0,
events=<optimized out>) at /home/nate/kde/src/libquotient/lib/room.cpp:2993
#18 0x00007ffff70eecdb in operator() (__closure=<optimized out>) at
/usr/include/c++/12/bits/allocator.h:174
#19 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void,
Quotient::Room::Private::getPreviousContent(int, const QString&)::<lambda()>
>::call (arg=<optimized out>, f=<optimized out>) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#20 QtPrivate::Functor<Quotient::Room::Private::getPreviousContent(int, const
QString&)::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>,
f=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#21
QtPrivate::QFunctorSlotObject<Quotient::Room::Private::getPreviousContent(int,
const QString&)::<lambda()>, 0, QtPrivate::List<>, 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/qt5/QtCore/qobjectdefs_impl.h:443
#22 0x00007ffff4adb9a6 in void doActivate<false>(QObject*, int, void**) () at
/lib64/libQt5Core.so.5
#23 0x00007ffff7097df2 in Quotient::BaseJob::success(Quotient::BaseJob*)
(this=this@entry=0x4baab00, _t1=<optimized out>, _t1@entry=0x4baab00) at
/home/nate/kde/build/libquotient/Quotient_autogen/3INUWTIJ2C/moc_basejob.cpp:542
#24 0x00007ffff7131ae9 in Quotient::BaseJob::finishJob() (this=0x4baab00) at
/home/nate/kde/src/libquotient/lib/jobs/basejob.cpp:633
#25 0x00007ffff4adb9a6 in void doActivate<false>(QObject*, int, void**) () at
/lib64/libQt5Core.so.5
#26 0x00007ffff644ecf8 in QNetworkReplyHttpImplPrivate::finished() () at
/lib64/libQt5Network.so.5
#27 0x00007ffff4ad2c44 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#28 0x00007ffff57aed02 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() at /lib64/libQt5Widgets.so.5
#29 0x00007ffff4aa81c8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() at /lib64/libQt5Core.so.5
#30 0x00007ffff4aab534 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () at /lib64/libQt5Core.so.5
#31 0x00007ffff4af9537 in postEventSourceDispatch(_GSource*, int (*)(void*),
void*) () at /lib64/libQt5Core.so.5
#32 0x00007ffff3f18faf in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#33 0x00007ffff3f6e2c8 in g_main_context_iterate.constprop () at
/lib64/libglib-2.0.so.0
#34 0x00007ffff3f16940 in g_main_context_iteration () at
/lib64/libglib-2.0.so.0
#35 0x00007ffff4af902a in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /lib64/libQt5Core.so.5
#36 0x00007ffff4aa6c1a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at
/lib64/libQt5Core.so.5
#37 0x00007ffff4aaece2 in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#38 0x000000000043416f in main(int, char**) (argc=<optimized out>,
argv=<optimized out>) at /home/nate/kde/src/neochat/src/main.cpp:303
[Inferior 1 (process 265375) detached]

Reported using DrKonqi

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

Reply via email to