Project

General

Profile

Bug #1295

Crash upon configuring network using deleted identity

Added by ObsequiousNewt over 10 years ago. Updated over 3 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
06/27/2014
Due date:
% Done:

0%

Estimated time:
Version:
0.10.0
OS:
Any

Description

Create an identity, and configure a network to use said identity. Then delete that identity.

Joining to said network is now impossible (pressing "connect" essentially has no visible effect). Attempting to configure said network causes Quassel to segfault, with the following backtrace:

Application: Quassel IRC (quassel), signal: Segmentation fault
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0xaf55f7c0 (LWP 4482))]

Thread 4 (Thread 0xabeffb40 (LWP 4484)):
#0 0xb73fc424 in __kernel_vsyscall ()
#1 0xb35dd7ab in poll () at ../sysdeps/unix/syscall-template.S:81
#2 0xb342e20b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3 0xb341f3e8 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4 0xb341f76b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5 0xafaa0e9a in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0
#6 0xb34459ca in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7 0xb34eaf70 in start_thread (arg=0xabeffb40) at pthread_create.c:312
#8 0xb35ec70e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 3 (Thread 0xab353b40 (LWP 4485)):
#0 0xb73fc424 in kernel_vsyscall ()
#1 0xb35fa392 in __GI
_clock_gettime (clock_id=1, tp=0xab352fa8) at ../sysdeps/unix/clock_gettime.c:115
#2 0xb719b8cc in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#3 0xb72842a2 in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#4 0xb728282b in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#5 0xb341e9b3 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6 0xb341f2df in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7 0xb341f528 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8 0xb728295f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#9 0xb7251823 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#10 0xb7251b49 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#11 0xb713e23d in QThread::exec() () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#12 0xb75e7d43 in SessionThread::run (this=0xb7e2dd78) at /build/buildd/quassel-0.10.0/src/core/sessionthread.cpp:128
#13 0xb7140b6f in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#14 0xb34eaf70 in start_thread (arg=0xab353b40) at pthread_create.c:312
#15 0xb35ec70e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 2 (Thread 0xaa9ffb40 (LWP 4486)):
#0 0xb73fc424 in __kernel_vsyscall ()
#1 0xb34eed4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2 0xb35f98ec in __pthread_cond_wait (cond=0xb64d28d0, mutex=0xb64d28b8) at forward.c:149
#3 0xb63cfc92 in ?? () from /usr/lib/i386-linux-gnu/libQtScript.so.4
#4 0xb63cfcdf in ?? () from /usr/lib/i386-linux-gnu/libQtScript.so.4
#5 0xb34eaf70 in start_thread (arg=0xaa9ffb40) at pthread_create.c:312
#6 0xb35ec70e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 1 (Thread 0xaf55f7c0 (LWP 4482)):
[KCrash Handler]
#6 0xb7669f84 in Identity::Identity (this=0xb910af88, other=..., parent=0xb9056260) at /build/buildd/quassel-0.10.0/src/common/identity.cpp:75
#7 0xb75876fc in CertIdentity::CertIdentity (this=0xb910af88, other=..., parent=0xb9056260) at /build/buildd/quassel-0.10.0/src/client/clientidentity.cpp:41
#8 0xb74cfa48 in NetworksSettingsPage::displayNetwork (this=this@entry=0xb9056260, id=id@entry=...) at /build/buildd/quassel-0.10.0/src/qtui/settingspages/networkssettingspage.cpp:488
#9 0xb74d0966 in NetworksSettingsPage::on_networkList_itemSelectionChanged (this=0xb9056260) at /build/buildd/quassel-0.10.0/src/qtui/settingspages/networkssettingspage.cpp:610
#10 0xb74f11f8 in NetworksSettingsPage::qt_static_metacall (_o=0xb77970e8 <vtable for Identity+8>, _o@entry=0xb9056260, _id=-1220813823, _id@entry=17, _a=_a@entry=0xbf913018, _c=<optimized out>) at /build/buildd/quassel-0.10.0/obj-i686-linux-gnu/src/qtui/settingspages/moc_networkssettingspage.cxx:114
#11 0xb74f1433 in qt_static_metacall (_a=0xbf913018, _id=17, _c=QMetaObject::InvokeMetaMethod, _o=0xb9056260) at /build/buildd/quassel-0.10.0/obj-i686-linux-gnu/src/qtui/settingspages/moc_networkssettingspage.cxx:162
#12 NetworksSettingsPage::qt_metacall (this=0xb9056260, _c=QMetaObject::InvokeMetaMethod, _id=17, _a=0xbf913018) at /build/buildd/quassel-0.10.0/obj-i686-linux-gnu/src/qtui/settingspages/moc_networkssettingspage.cxx:163
#13 0xb7259e85 in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#14 0xb726840d in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#15 0xb6d54115 in QListWidget::itemSelectionChanged() () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#16 0xb6d56998 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#17 0xb72680f7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#18 0xb6d4205d in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#19 0xb6d478d9 in QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#20 0xb6d480df in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#21 0xb6d12e16 in QListView::setSelection(QRect const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#22 0xb6cec0f9 in QAbstractItemView::mousePressEvent(QMouseEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#23 0xb67b81e3 in QWidget::event(QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#24 0xb6bbe78c in QFrame::event(QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#25 0xb6c4ce48 in QAbstractScrollArea::viewportEvent(QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#26 0xb6cf1ddc in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#27 0xb6c4d0c6 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#28 0xb7252fbe in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#29 0xb675e7d1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#30 0xb6766ea0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#31 0xb3b791f4 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#32 0xb7252e4a in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#33 0xb6764b53 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#34 0xb67e8778 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#35 0xb67e7ec5 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#36 0xb6813524 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#37 0xb341f1e3 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#38 0xb341f468 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#39 0xb341f528 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#40 0xb728293b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#41 0xb68135de in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#42 0xb7251823 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#43 0xb7251b49 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#44 0xb72578fe in QCoreApplication::exec() () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#45 0xb675ca24 in QApplication::exec() () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#46 0xb7464797 in main (argc=1, argv=0xbf914064) at /build/buildd/quassel-0.10.0/src/common/main.cpp:153


Related issues

Has duplicate Quassel IRC - Bug #1492: Segfault when selecting a network in quasselclient configurationResolved2018-09-11

History

#1 Updated by rcthompson about 10 years ago

I'm encountering this issue too. It's actually a major issue, because there's no way to delete or fix the broken network. Is there any workaround to delete the network?

#2 Updated by ObsequiousNewt about 10 years ago

rcthompson wrote:

I'm encountering this issue too. It's actually a major issue, because there's no way to delete or fix the broken network. Is there any workaround to delete the network?

The config files are written in some arcane format, so evidently not.

#3 Updated by rcthompson about 10 years ago

Ok, for what it's worth, I was able to get myself out of this mess by manually editing the sqlite file as follows:

$ sqlite3 quassel-storage.sqlite
sqlite> update network set identityid=2 where networkname="OFTC";

where "2" is the identityid of an existing identity, and "OFTC" was the name of the problematic network. You can figure out these values by doing "select identityid from identity;" and "select networkname from network;".

#4 Updated by genius3000 about 6 years ago

  • Has duplicate Bug #1492: Segfault when selecting a network in quasselclient configuration added

#5 Updated by phuzion over 3 years ago

  • Status changed from New to Resolved

As seen in #1409, this bug is fixed.

Also available in: Atom PDF