nheko icon indicating copy to clipboard operation
nheko copied to clipboard

Crash when logging in on a new profile

Open syldrathecat opened this issue 3 years ago • 2 comments

Describe the bug

I've had this crash very consistently but I don't really understand enough about the database setup to understand why its happening.

Maybe-relevant dependencies: lmdb 0.9.24-1 (debian) lmdbxx (bundled version) olm (bundled version)

To Reproduce

  1. Log in to an account on the default profile
  2. Close and re-launch Nheko with a new profile using the --profile option
  3. Attempt to log in again
  4. SIGSEGV ensues

If you re-launch Nheko again afterwards then the profile is logged in and functions fine afterwards.

What happened?

No response

Expected behavior

No response

Screenshots

No response

Version

f3ff56692e16fdeb33a15fa8e7123a058595d9ad

Operating system

Linux

Installation method

Local build

Qt version

No response

C++ compiler

No response

Desktop Environment

No response

Did you use profiles?

  • [x] Profiles used?

Relevant log output

No response

Backtrace

Thread 1 (Thread 0x7fffef1d2340 (LWP 34002) "nheko"):
#0  0x00007ffff578f7c4 in mdb_txn_begin (env=0x0, parent=0x0, flags=0, ret=0x7fffffffc9d8) at mdb.c:2830
        txn = <optimized out>
        ntxn = <optimized out>
        rc = <optimized out>
        size = <optimized out>
        tsize = <optimized out>
#1  0x0000555557272681 in lmdb::txn_begin(MDB_env*, MDB_txn*, unsigned int, MDB_txn**) (env=0x0, parent=0x0, flags=0, txn=0x7fffffffc9d8) at /home/child/.build-qtcreator/nheko-unsanitary-Debug/_deps/lmdbxx-src/lmdb++.h:553
        rc = 32767
#2  0x00005555572728b7 in lmdb::txn::begin(MDB_env*, MDB_txn*, unsigned int) (env=0x0, parent=0x0, flags=0) at /home/child/.build-qtcreator/nheko-unsanitary-Debug/_deps/lmdbxx-src/lmdb++.h:1141
        handle = 0x0
#3  0x0000555557438f3c in Cache::getTimelineMentions() (this=0x555558b249d0) at /home/child/third-party/nheko/src/Cache.cpp:1986
        txn = {_handle = 0x2, static default_flags = 0}
        notifs = {d = 0x0}
        room_ids = {<std::_Vector_base<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >> = {_M_impl = {<std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >> = {<__gnu_cxx::new_allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >> = {<No data fields>}, <No data fields>}, <std::_Vector_base<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_Vector_impl_data> = {_M_start = 0x5555577dbd70, _M_finish = 0x555557666340 <(anonymous namespace)::instance_>, _M_end_of_storage = 0x7fffffffca60}, <No data fields>}}, <No data fields>}
#4  0x0000555557454355 in cache::getTimelineMentions() () at /home/child/third-party/nheko/src/Cache.cpp:5074
#5  0x00005555574dad87 in ChatPage::loadStateFromCache() (this=0x5555577dbd70) at /home/child/third-party/nheko/src/ChatPage.cpp:413
#6  0x00005555574d9f66 in operator()() const (__closure=0x5555588e0cb0) at /home/child/third-party/nheko/src/ChatPage.cpp:339
        isInitialized = true
        cacheVersion = cache::CacheVersion::Current
        this = 0x5555577dbd70
#7  0x00005555574ef4cf in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, ChatPage::bootstrap(QString, QString, QString)::<lambda()> >::call(struct {...} &, void **) (f=..., arg=0x7fffffffd030) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:146
#8  0x00005555574edcbe in QtPrivate::Functor<ChatPage::bootstrap(QString, QString, QString)::<lambda()>, 0>::call<QtPrivate::List<>, void>(struct {...} &, void *, void **) (f=..., arg=0x7fffffffd030) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:256
#9  0x00005555574eb4fc in QtPrivate::QFunctorSlotObject<ChatPage::bootstrap(QString, QString, QString)::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x5555588e0ca0, r=0x5555577dbd70, a=0x7fffffffd030, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:443
#10 0x00007ffff45fb133 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffffd030, r=0x5555577dbd70, this=0x5555588e0ca0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
        obj = {_M_t = {<std::__uniq_ptr_impl<QtPrivate::QSlotObjectBase, doActivate<false>(QObject*, int, void**)::Deleter>> = {_M_t = {<std::_Tuple_impl<0, QtPrivate::QSlotObjectBase*, doActivate<false>(QObject*, int, void**)::Deleter>> = {<std::_Tuple_impl<1, doActivate<false>(QObject*, int, void**)::Deleter>> = {<std::_Head_base<1, doActivate<false>(QObject*, int, void**)::Deleter, true>> = {_M_head_impl = {<No data fields>}}, <No data fields>}, <std::_Head_base<0, QtPrivate::QSlotObjectBase*, false>> = {_M_head_impl = 0x5555588e0ca0}, <No data fields>}, <No data fields>}}, <No data fields>}}
        receiver = 0x5555577dbd70
        td = <optimized out>
        receiverInSameThread = <optimized out>
        senderData = {previous = 0x0, receiver = 0x5555577dbd70, sender = 0x555558b249d0, signal = 11}
        c = 0x555558b26a40
        connections = {d = 0x55555775d400}
        list = <optimized out>
        inSenderThread = true
        highestConnectionId = 7
        signalVector = 0x555557759cd0
        currentThreadId = 0x7fffef1d2340
        sp = <optimized out>
        signal_spy_set = 0x0
        empty_argv = {0x0}
        senderDeleted = false
#11 doActivate<false>(QObject*, int, void**) (sender=0x555558b249d0, signal_index=11, argv=0x7fffffffd030) at kernel/qobject.cpp:3886
        obj = {_M_t = {<std::__uniq_ptr_impl<QtPrivate::QSlotObjectBase, doActivate<false>(QObject*, int, void**)::Deleter>> = {_M_t = {<std::_Tuple_impl<0, QtPrivate::QSlotObjectBase*, doActivate<false>(QObject*, int, void**)::Deleter>> = {<std::_Tuple_impl<1, doActivate<false>(QObject*, int, void**)::Deleter>> = {<std::_Head_base<1, doActivate<false>(QObject*, int, void**)::Deleter, true>> = {_M_head_impl = {<No data fields>}}, <No data fields>}, <std::_Head_base<0, QtPrivate::QSlotObjectBase*, false>> = {_M_head_impl = 0x5555588e0ca0}, <No data fields>}, <No data fields>}}, <No data fields>}}
        receiver = 0x5555577dbd70
        td = <optimized out>
        receiverInSameThread = <optimized out>
        senderData = {previous = 0x0, receiver = 0x5555577dbd70, sender = 0x555558b249d0, signal = 11}
        c = 0x555558b26a40
        connections = {d = 0x55555775d400}
        list = <optimized out>
        inSenderThread = true
        highestConnectionId = 7
        signalVector = 0x555557759cd0
        currentThreadId = 0x7fffef1d2340
        sp = <optimized out>
        signal_spy_set = 0x0
        empty_argv = {0x0}
        senderDeleted = false
#12 0x0000555556fda79d in Cache::databaseReady() (this=0x555558b249d0) at /home/child/.build-qtcreator/nheko-unsanitary-Debug/nheko_autogen/UVLADIE3JM/moc_Cache_p.cpp:295
#13 0x00005555574295ff in Cache::loadSecrets(std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> > >) (this=0x555558b249d0, toLoad=...) at /home/child/third-party/nheko/src/Cache.cpp:366
        settings = 0x555557718f08
        name_ = @0x555558b5b920: {static npos = 18446744073709551615, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x3 <error: Cannot access memory at address 0x3>}, _M_string_length = 0, {_M_local_buf = "\000\000\000\000\001\000\016\000\000\000\000\000\000\000\000", _M_allocated_capacity = 3940653968916480}}
        internal = @0x7fffffffd350: false
        job = 0x555558995af8
        name = {d = 0x5555577dc300}
#14 0x0000555557428f92 in operator()() const (__closure=0x555558995af0) at /home/child/third-party/nheko/src/Cache.cpp:421
        toLoad = {<std::_Vector_base<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> > >> = {_M_impl = {<std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> >> = {<__gnu_cxx::new_allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> >> = {<No data fields>}, <No data fields>}, <std::_Vector_base<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> > >::_Vector_impl_data> = {_M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}, <No data fields>}}, <No data fields>}
        this = 0x555558b249d0
        secret = {d = 0x0}
        job = 0xc35df8458b481089
        toLoad = {<std::_Vector_base<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> > >> = {_M_impl = {<std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> >> = {<__gnu_cxx::new_allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> >> = {<No data fields>}, <No data fields>}, <std::_Vector_base<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool> > >::_Vector_impl_data> = {_M_start = 0xf87d8948e5894855, _M_finish = 0x48008b48f8458b48, _M_end_of_storage = 0x48f8458b4828508d}, <No data fields>}}, <No data fields>}
        name = {d = 0xccc3c9f85d8b48c0}
        this = 0x950fc33948008b48
        settings = 0x0
        name_ = <error reading variable>
        internal = @0x555558995af0: 208
        job = 0x7ffff419b2f0 <g.g_signal_mutex_lock>
        name = {d = 0x0}
#15 0x0000555557477a42 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, Cache::loadSecrets(std::vector<std::pair<std::__cxx11::basic_string<char>, bool> >)::<lambda(QKeychain::Job*)> mutable::<lambda()> >::call(struct {...} &, void **) (f=..., arg=0x555558960098) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:146
#16 0x0000555557472196 in QtPrivate::Functor<Cache::loadSecrets(std::vector<std::pair<std::__cxx11::basic_string<char>, bool> >)::<lambda(QKeychain::Job*)> mutable::<lambda()>, 0>::call<QtPrivate::List<>, void>(struct {...} &, void *, void **) (f=..., arg=0x555558960098) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:256
#17 0x000055555746d60c in QtPrivate::QFunctorSlotObject<Cache::loadSecrets(std::vector<std::pair<std::__cxx11::basic_string<char>, bool> >)::<lambda(QKeychain::Job*)> mutable::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x555558995ae0, r=0x555558b249d0, a=0x555558960098, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:443
#18 0x00007ffff45f10de in QObject::event(QEvent*) (this=0x555558b249d0, e=0x555558960050) at kernel/qobject.cpp:1314
        mce = 0x555558960050
        sender = {previous = 0x0, receiver = 0x555558b249d0, sender = 0x0, signal = -1}
#19 0x00007ffff52416bf in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x555558b249d0, e=0x555558960050) at kernel/qapplication.cpp:3632
        consumed = false
        filtered = false
#20 0x00007ffff45c4aca in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x555558b249d0, event=0x555558960050) at kernel/qcoreapplication.cpp:1063
        selfRequired = true
        result = false
        cbdata = {0x555558b249d0, 0x555558960050, 0x7fffffffd51f}
        d = <optimized out>
        threadData = 0x55555768b760
        scopeLevelCounter = {threadData = 0x55555768b760}
#21 0x00007ffff45c7b17 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x55555768b760) at kernel/qcoreapplication.cpp:1817
        e = 0x555558960050
        pe = <optimized out>
        r = <optimized out>
        relocker = {m_func = {__locker = @0x7fffffffd5a0}, m_invoke = true}
        event_deleter = {d = 0x555558960050}
        locker = {_M_device = 0x55555768b790, _M_owns = false}
        startOffset = 0
        i = @0x55555768b784: 1
        cleanup = {receiver = 0x0, event_type = 0, data = 0x55555768b760, exceptionCaught = true}
#22 0x00007ffff461ca83 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x55555770b800) at kernel/qeventdispatcher_glib.cpp:277
        source = 0x55555770b800
#23 0x00007ffff4058fab in g_main_dispatch (context=0x7fffe8005000) at ../../../glib/gmain.c:3417
        dispatch = 0x7ffff461ca70 <postEventSourceDispatch(GSource*, GSourceFunc, gpointer)>
        prev_source = 0x0
        begin_time_nsec = 0
        was_in_call = 0
        user_data = 0x0
        callback = 0x0
        cb_funcs = <optimized out>
        cb_data = <optimized out>
        need_destroy = <optimized out>
        source = 0x55555770b800
        current = 0x5555588f0c00
        i = 0
        __func__ = "g_main_dispatch"
#24 g_main_context_dispatch (context=0x7fffe8005000) at ../../../glib/gmain.c:4135
#25 0x00007ffff4059258 in g_main_context_iterate (context=context@entry=0x7fffe8005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4211
        max_priority = 0
        timeout = 0
        some_ready = 1
        nfds = <optimized out>
        allocated_nfds = <optimized out>
        fds = 0x5555588f0720
#26 0x00007ffff405930f in g_main_context_iteration (context=0x7fffe8005000, may_block=1) at ../../../glib/gmain.c:4276
        retval = <optimized out>
#27 0x00007ffff461c104 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x555557717a50, flags=...) at kernel/qeventdispatcher_glib.cpp:423
        d = 0x5555576ce380
        canWait = <optimized out>
        savedFlags = {i = 0}
        result = <optimized out>
#28 0x00007ffff45c34db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffd800, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
        d = 0x5555588e1fe0
        threadData = <optimized out>
        locker = {val = 93825027050776}
        app = <optimized out>
#29 0x00007ffff45cb7b0 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
        threadData = 0x55555768b760
        eventLoop = {<QObject> = {_vptr.QObject = 0x7ffff485d8c8 <vtable for QEventLoop+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff478e020 <qt_meta_stringdata_QObject>, data = 0x7ffff478df00 <qt_meta_data_QObject>, static_metacall = 0x7ffff45f98d0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x5555588e1fe0}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff4790fc0 <qt_meta_stringdata_Qt>, data = 0x7ffff478e140 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff4855140 <QObject::staticMetaObject>}, stringdata = 0x7ffff47887a0 <qt_meta_stringdata_QEventLoop>, data = 0x7ffff4788740 <qt_meta_data_QEventLoop>, static_metacall = 0x7ffff45c3220 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}
        returnCode = <optimized out>
#30 0x0000555557601b7f in main(int, char**) (argc=4, argv=0x7fffffffdeb8) at /home/child/third-party/nheko/src/main.cpp:358
        userdata = {d = 0x5555576c7b00}
        matrixUri = {d = 0x7ffff46aaae0 <QArrayData::shared_null>}
        app = {<QApplication> = {<QGuiApplication> = {<No data fields>}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff50c40c0 <QGuiApplication::staticMetaObject>}, stringdata = 0x7ffff55f48a0 <qt_meta_stringdata_QApplication>, data = 0x7ffff55f4720 <qt_meta_data_QApplication>, static_metacall = 0x7ffff52451c0 <QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff5758fa0 <QApplication::staticMetaObject>}, stringdata = 0x555556c90260 <qt_meta_stringdata_SingleApplication>, data = 0x555556c90340 <qt_meta_data_SingleApplication>, static_metacall = 0x555557639edc <SingleApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = 0x555557723d30}
        parser = {d = 0x555557726140}
        debugOption = {d = {d = 0x555557729400}}
        configName = {d = {d = 0x555557729540}}
        settings = {d = 0x555557787ca0, value = 0x555557718e10}
        font = {d = {d = 0x5555576a6020}, resolve_mask = 2}
        userFontFamily = {d = 0x55555775d020}
        qtTranslator = {<QObject> = {_vptr.QObject = 0x7ffff485e390 <vtable for QTranslator+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff478e020 <qt_meta_stringdata_QObject>, data = 0x7ffff478df00 <qt_meta_data_QObject>, static_metacall = 0x7ffff45f98d0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55555780a060}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff4790fc0 <qt_meta_stringdata_Qt>, data = 0x7ffff478e140 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff4855140 <QObject::staticMetaObject>}, stringdata = 0x7ffff479da20 <qt_meta_stringdata_QTranslator>, data = 0x7ffff479d9e0 <qt_meta_data_QTranslator>, static_metacall = 0x7ffff45ffda0 <QTranslator::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}
        appTranslator = {<QObject> = {_vptr.QObject = 0x7ffff485e390 <vtable for QTranslator+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff478e020 <qt_meta_stringdata_QObject>, data = 0x7ffff478df00 <qt_meta_data_QObject>, static_metacall = 0x7ffff45f98d0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x5555577f9b20}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7ffff4790fc0 <qt_meta_stringdata_Qt>, data = 0x7ffff478e140 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff4855140 <QObject::staticMetaObject>}, stringdata = 0x7ffff479da20 <qt_meta_stringdata_QTranslator>, data = 0x7ffff479d9e0 <qt_meta_data_QTranslator>, static_metacall = 0x7ffff45ffda0 <QTranslator::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}
        w = {<QQuickView> = {<QQuickWindow> = {<QWindow> = {<No data fields>}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff50c4300 <QWindow::staticMetaObject>}, stringdata = 0x7ffff60e8c80 <qt_meta_stringdata_QQuickWindow>, data = 0x7ffff60e8840 <qt_meta_data_QQuickWindow>, static_metacall = 0x7ffff5f1b510 <QQuickWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff61f48e0 <QQuickWindow::staticMetaObject>}, stringdata = 0x7ffff60fa160 <qt_meta_stringdata_QQuickView>, data = 0x7ffff60f9fe0 <qt_meta_data_QQuickView>, static_metacall = 0x7ffff5f8bbb0 <QQuickView::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7ffff61f7a00 <QQuickView::staticMetaObject>}, stringdata = 0x555556a4c3c0 <qt_meta_stringdata_MainWindow>, data = 0x555556a4c6c0 <qt_meta_data_MainWindow>, static_metacall = 0x555556fe0634 <MainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, welcome_page_ = 0x7fffef2176f8, register_page_ = 0x7ffff433d888, chat_page_ = 0x5555577dbd70, userSettings_ = {value = 0x555557718e10, d = 0x555557787ca0}, trayIcon_ = 0x5555589932f0, dock_ = 0x5555588dea60, imgProvider = 0x555557b62380, roomWindows_ = {<QHash<QString, QWindow*>> = {{d = 0x7ffff46ab560 <QHashData::shared_null>, e = 0x7ffff46ab560 <QHashData::shared_null>}}, <No data fields>}, dbusAvailable_ = false}
        uriConnection = {d_ptr = 0x0}

syldrathecat avatar Jun 13 '22 07:06 syldrathecat

I do this all the time and never had it crash. Did you close Nheko during login before?

deepbluev7 avatar Jun 13 '22 09:06 deepbluev7

I have no idea on this one. It looks like the env is null, but I have no idea, how it got there!

deepbluev7 avatar Jun 15 '22 20:06 deepbluev7