Bug 329403 - KDE Bluetooth wizzard hangs while "adding device" (only Apple Magic Mouse discoverable, AFAIK)
Summary: KDE Bluetooth wizzard hangs while "adding device" (only Apple Magic Mouse d...
Status: RESOLVED FIXED
Alias: None
Product: solid
Classification: Frameworks and Libraries
Component: bluetooth (show other bugs)
Version: 2.0.0
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Alex Fiestas
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2013-12-30 08:13 UTC by Jens TINGLEFF
Modified: 2014-03-09 02:45 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (7.17 KB, text/plain)
2014-02-04 09:32 UTC, Jiří Martínek
Details
New crash information added by DrKonqi (5.59 KB, text/plain)
2014-02-27 09:07 UTC, francesco21
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jens TINGLEFF 2013-12-30 08:13:13 UTC
Application: bluedevil-wizard (2.0.0)
KDE Platform Version: 4.11.4
Qt Version: 4.8.5
Operating System: Linux 3.12.5-302.fc20.x86_64 x86_64
Distribution (Platform): Fedora RPMs

-- Information about the crash:
- What I was doing when the application crashed:

Making the Apple mouse discoverable (by switching off then on), starting "scan for devices". The mouse HEX identifier showed but the "Next" button did not activate.

The crash can be reproduced every time.

-- Backtrace:
Application: Bluetooth Wizard (bluedevil-wizard), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
81	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[KCrash Handler]
#6  BlueDevil::Adapter::deviceForAddress (this=0x0, address=...) at /usr/src/debug/libbluedevil-2.0-rc1/bluedevil/bluedeviladapter.cpp:191
#7  0x0000000000409a2c in BlueWizard::setDeviceAddress (this=0xb1c7a0, address=...) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/bluewizard.cpp:101
#8  0x000000000040c04e in DiscoverPage::itemSelected (this=0xb5bee0, item=0xd40270) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/pages/discoverpage.cpp:169
#9  0x0000003de4998fa8 in QMetaObject::activate (sender=sender@entry=0xb622d0, m=m@entry=0x3de88bc4a0 <QListWidget::staticMetaObject>, local_signal_index=local_signal_index@entry=6, argv=argv@entry=0x7fff5c310280) at kernel/qobject.cpp:3547
#10 0x0000003de834d2db in QListWidget::currentItemChanged (this=this@entry=0xb622d0, _t1=_t1@entry=0xd40270, _t2=0xb34a50) at .moc/release-shared/moc_qlistwidget.cpp:246
#11 0x0000003de834d46c in QListWidgetPrivate::_q_emitCurrentItemChanged (this=0xb78c60, current=..., previous=...) at itemviews/qlistwidget.cpp:1112
#12 0x0000003de4998fa8 in QMetaObject::activate (sender=sender@entry=0xb80900, m=m@entry=0x3de88bbce0 <QItemSelectionModel::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7fff5c310440) at kernel/qobject.cpp:3547
#13 0x0000003de833aeea in QItemSelectionModel::currentChanged (this=this@entry=0xb80900, _t1=..., _t2=...) at .moc/release-shared/moc_qitemselectionmodel.cpp:172
#14 0x0000003de833b060 in QItemSelectionModel::setCurrentIndex (this=0xb80900, index=..., command=...) at itemviews/qitemselectionmodel.cpp:1175
#15 0x0000003de834c618 in QListWidget::setCurrentRow (this=0xb622d0, row=1) at itemviews/qlistwidget.cpp:1488
#16 0x0000003de834c674 in QListWidget::setCurrentItem (this=<optimized out>, item=<optimized out>) at itemviews/qlistwidget.cpp:1455
#17 0x000000000040c733 in DiscoverPage::deviceFound (this=0xb5bee0, device=0xc198a0) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/pages/discoverpage.cpp:158
#18 0x0000003de4998fa8 in QMetaObject::activate (sender=0xc198a0, m=m@entry=0x3deac268a0 <BlueDevil::Device::staticMetaObject>, local_signal_index=local_signal_index@entry=7, argv=argv@entry=0x7fff5c310820) at kernel/qobject.cpp:3547
#19 0x0000003deaa163ba in BlueDevil::Device::propertyChanged (this=<optimized out>, _t1=..., _t2=...) at /usr/src/debug/libbluedevil-2.0-rc1/x86_64-redhat-linux-gnu/bluedevil/bluedevildevice.moc:265
#20 0x0000003deaa17223 in BlueDevil::Device::Private::_k_propertyChanged (this=0xc17c70, interface_name=..., changed_values=..., invalidated_values=...) at /usr/src/debug/libbluedevil-2.0-rc1/bluedevil/bluedevildevice.cpp:134
#21 0x0000003de4998fa8 in QMetaObject::activate (sender=sender@entry=0xc19ab0, m=m@entry=0x3deac26a60 <OrgFreedesktopDBusPropertiesInterface::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff5c310b10) at kernel/qobject.cpp:3547
#22 0x0000003deaa193ac in OrgFreedesktopDBusPropertiesInterface::PropertiesChanged (this=this@entry=0xc19ab0, _t1=..., _t2=..., _t3=...) at /usr/src/debug/libbluedevil-2.0-rc1/x86_64-redhat-linux-gnu/bluedevil/dbusproperties.moc:118
#23 0x0000003deaa1961d in OrgFreedesktopDBusPropertiesInterface::qt_static_metacall (_o=_o@entry=0xc19ab0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=0, _a=_a@entry=0x7fff5c310dd0) at /usr/src/debug/libbluedevil-2.0-rc1/x86_64-redhat-linux-gnu/bluedevil/dbusproperties.moc:63
#24 0x0000003deaa19b83 in OrgFreedesktopDBusPropertiesInterface::qt_metacall (this=0xc19ab0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fff5c310dd0) at /usr/src/debug/libbluedevil-2.0-rc1/x86_64-redhat-linux-gnu/bluedevil/dbusproperties.moc:108
#25 0x0000003de6224cd6 in QDBusConnectionPrivate::deliverCall (this=0xc12960, object=0xc19ab0, msg=..., metaTypes=..., slotIdx=5) at qdbusintegrator.cpp:951
#26 0x0000003de499d53e in QObject::event (this=0xc19ab0, e=<optimized out>) at kernel/qobject.cpp:1194
#27 0x0000003de7dc9dfc in QApplicationPrivate::notify_helper (this=this@entry=0x99abf0, receiver=receiver@entry=0xc19ab0, e=e@entry=0xd2d760) at kernel/qapplication.cpp:4562
#28 0x0000003de7dd0795 in QApplication::notify (this=this@entry=0x7fff5c311600, receiver=receiver@entry=0xc19ab0, e=e@entry=0xd2d760) at kernel/qapplication.cpp:4348
#29 0x0000003de9c4a9ca in KApplication::notify (this=0x7fff5c311600, receiver=0xc19ab0, event=0xd2d760) at /usr/src/debug/kdelibs-4.11.4/kdeui/kernel/kapplication.cpp:311
#30 0x0000003de49845ed in QCoreApplication::notifyInternal (this=0x7fff5c311600, receiver=receiver@entry=0xc19ab0, event=event@entry=0xd2d760) at kernel/qcoreapplication.cpp:949
#31 0x0000003de49876e7 in sendEvent (event=0xd2d760, receiver=0xc19ab0) at kernel/qcoreapplication.h:231
#32 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x96f520) at kernel/qcoreapplication.cpp:1573
#33 0x0000003de4987b93 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1466
#34 0x0000003de49b3903 in sendPostedEvents () at kernel/qcoreapplication.h:236
#35 postEventSourceDispatch (s=s@entry=0x997c70) at kernel/qeventdispatcher_glib.cpp:280
#36 0x0000003dde4492a6 in g_main_dispatch (context=0x99b620) at gmain.c:3066
#37 g_main_context_dispatch (context=context@entry=0x99b620) at gmain.c:3642
#38 0x0000003dde449628 in g_main_context_iterate (context=context@entry=0x99b620, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3713
#39 0x0000003dde4496dc in g_main_context_iteration (context=0x99b620, may_block=1) at gmain.c:3774
#40 0x0000003de49b3185 in QEventDispatcherGlib::processEvents (this=0x970e80, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#41 0x0000003de7e6bdb6 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:207
#42 0x0000003de498312f in QEventLoop::processEvents (this=this@entry=0x7fff5c3114f0, flags=...) at kernel/qeventloop.cpp:149
#43 0x0000003de498347d in QEventLoop::exec (this=this@entry=0x7fff5c3114f0, flags=...) at kernel/qeventloop.cpp:204
#44 0x0000003de49889bb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1221
#45 0x0000003de7dc846c in QApplication::exec () at kernel/qapplication.cpp:3823
#46 0x00000000004088b6 in main (argc=1, argv=0x7fff5c311738) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/main.cpp:52

Reported using DrKonqi
Comment 1 Alex Fiestas 2014-01-20 01:14:06 UTC
This crash is happening because the code is not able to find your bluetooth adapter.

You were not disconnecting your bluetooth while doing this, right?
Comment 2 Jens TINGLEFF 2014-01-20 13:36:10 UTC
No, the adaptor is a USB device which I'm not removing. I don't know if the bluetooth device (the mouse) is timing out.
Comment 3 Jiří Martínek 2014-02-04 09:32:54 UTC
Created attachment 84985 [details]
New crash information added by DrKonqi

bluedevil-wizard (2.0.0) on KDE Platform 4.11.5 using Qt 4.8.5

- What I was doing when the application crashed:

I tried to add HP Touch to Pair Mouse. It worked for a while but then crashed. Happened several time in the past after wakeup from suspend to RAM. Tried with fedora 20 kernels 3.11.10, 3.12.8 and 3.12.9. The oldest is most stable.

-- Backtrace (Reduced):
#6  BlueDevil::Adapter::deviceForAddress (this=0x0, address=...) at /usr/src/debug/libbluedevil-2.0-rc1/bluedevil/bluedeviladapter.cpp:191
#7  0x0000000000409a2c in BlueWizard::setDeviceAddress (this=0x1201320, address=...) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/bluewizard.cpp:101
#8  0x000000000040c04e in DiscoverPage::itemSelected (this=0x1310430, item=0x1678e90) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/pages/discoverpage.cpp:169
[...]
#10 0x00000038c134c4db in QListWidget::currentItemChanged (this=this@entry=0x1325df0, _t1=_t1@entry=0x1678e90, _t2=0x16c80e0) at .moc/release-shared/moc_qlistwidget.cpp:246
#11 0x00000038c134c66c in QListWidgetPrivate::_q_emitCurrentItemChanged (this=0x12a5c80, current=..., previous=...) at itemviews/qlistwidget.cpp:1112
Comment 4 francesco21 2014-02-27 09:07:28 UTC
Created attachment 85343 [details]
New crash information added by DrKonqi

bluedevil-wizard (2.0.0) on KDE Platform 4.12.2 using Qt 4.8.5

- What I was doing when the application crashed: i was trying to close bluetooth application.

-- Backtrace (Reduced):
#6  BlueDevil::Adapter::deviceForAddress (this=0x0, address=...) at /usr/src/debug/libbluedevil-2.0-rc1/bluedevil/bluedeviladapter.cpp:191
#7  0x0000000000409a2c in BlueWizard::setDeviceAddress (this=0x1b83f70, address=...) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/bluewizard.cpp:101
#8  0x000000000040c0e0 in DiscoverPage::itemSelected (this=this@entry=0x1beeb30, item=0x1b7ede0) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/pages/discoverpage.cpp:167
#9  0x000000000040c984 in DiscoverPage::deviceFound (this=0x1beeb30, device=0x1c96a10) at /usr/src/debug/bluedevil-2.0-rc1/src/wizard/pages/discoverpage.cpp:138
[...]
#11 0x00000032088163ba in BlueDevil::Device::propertyChanged (this=<optimized out>, _t1=..., _t2=...) at /usr/src/debug/libbluedevil-2.0-rc1/x86_64-redhat-linux-gnu/bluedevil/bluedevildevice.moc:265
Comment 5 Alex Fiestas 2014-03-09 02:44:16 UTC
Git commit 335d81d90d6b92b07b120d334958a2ae9b70c565 by Àlex Fiestas.
Committed on 09/03/2014 at 02:42.
Pushed by afiestas into branch 'master'.

[wizard] Better handling when no adapter is usable

Be more careful if at any moment in the Discover page
the Adapter stops being usable.

M  +5    -0    src/wizard/bluewizard.cpp
M  +4    -0    src/wizard/pages/discoverpage.cpp

http://commits.kde.org/bluedevil/335d81d90d6b92b07b120d334958a2ae9b70c565
Comment 6 Alex Fiestas 2014-03-09 02:45:40 UTC
This commit fixes the crash, but I'm quite sure that you won't be able to pair your device anyway (since at some point we are unable to detect your bluetooth adapter).

Please, test with 2.0-rc2 and open a new bug if you can't pair your device.

Thanks !