Bug 197445

Summary: digikam freezes while attempting to import images from canon powershot a540
Product: [Applications] digikam Reporter: Tobias Schula <tobias>
Component: Import-Gphoto2Assignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles, marcel.wiesweg
Priority: NOR    
Version: 1.0.0   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 1.0.0
Sentry Crash Report:

Description Tobias Schula 2009-06-22 00:53:40 UTC
Version:           1.0.0-beta2 (rev.: 985025) (using KDE 4.2.90)
OS:                Linux
Installed from:    Ubuntu Packages

I compiled digikam from source following this description: http://www.digikam.org/drupal/download?q=download/KDE4

When connecting the camera the previews show up just fine but when trying to download the images the app freezes and doesn't respond
Comment 1 Marcel Wiesweg 2009-06-22 10:43:43 UTC
Please verify that you can download images from your camera with the gphoto2 command line utility (Assuming Canon does not work in USB mass storage mode).

If this is fine, run digikam under gdb, make it freeze (no or high CPU usage?), interupt with Ctrl+C, type "bt", and give us the output.
Comment 2 Tobias Schula 2009-06-23 00:37:03 UTC
downloading via gphoto2 works fine, here is the backtrace:

#0  Digikam::IconItem::isSelected (this=0x848b7e0) at /home/tobias/digikam/graphics/digikam/digikam/iconitem.cpp:179
#1  0x0000000000559dd3 in Digikam::CameraUI::slotDownload (this=0x6d26850, onlySelected=true, deleteAfter=false, album=0x69a84c0)
    at /home/tobias/digikam/graphics/digikam/utilities/cameragui/cameraui.cpp:1551
#2  0x000000000055bd7c in Digikam::CameraUI::slotDownloadSelected (this=0x6d26850)
    at /home/tobias/digikam/graphics/digikam/utilities/cameragui/cameraui.cpp:1415
#3  0x0000000000567034 in Digikam::CameraUI::qt_metacall (this=0x6d26850, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0x7fffec1799e0)
    at /home/tobias/digikam/graphics/build/digikam/digikam/cameraui.moc:224
#4  0x00007f488c4b68d2 in QMetaObject::activate (sender=0x7df6e80, from_signal_index=<value optimized out>, to_signal_index=6, argv=0x0)
    at kernel/qobject.cpp:3120
#5  0x00007f488d017b87 in QAction::triggered (this=0x848b7e0, _t1=false) at .moc/release-shared/moc_qaction.cpp:236
#6  0x00007f488d019000 in QAction::activate (this=0x7df6e80, event=<value optimized out>) at kernel/qaction.cpp:1160
#7  0x00007f488d3c598a in QAbstractButtonPrivate::click (this=0x7e561a0) at widgets/qabstractbutton.cpp:525
#8  0x00007f488d3c5c25 in QAbstractButton::mouseReleaseEvent (this=0x7e4a520, e=0x7fffec17a1c0) at widgets/qabstractbutton.cpp:1115
#9  0x00007f488d49796a in QToolButton::mouseReleaseEvent (this=0x848b7e0, e=0x7fffec179650) at widgets/qtoolbutton.cpp:709
#10 0x00007f488d06edef in QWidget::event (this=0x7e4a520, event=0x7fffec17a1c0) at kernel/qwidget.cpp:7521
#11 0x00007f488d01db9d in QApplicationPrivate::notify_helper (this=0x153c2e0, receiver=0x7e4a520, e=0x7fffec17a1c0)
    at kernel/qapplication.cpp:4057
#12 0x00007f488d02654a in QApplication::notify (this=<value optimized out>, receiver=0x7e4a520, e=0x7fffec17a1c0)
    at kernel/qapplication.cpp:3759
#13 0x00007f488e44d06b in KApplication::notify (this=0x7fffec17c2d0, receiver=0x7e4a520, event=0x7fffec17a1c0)
    at /build/buildd/kde4libs-4.2.90/kdeui/kernel/kapplication.cpp:302
#14 0x00007f488c4a0dfc in QCoreApplication::notifyInternal (this=0x7fffec17c2d0, receiver=0x7e4a520, event=0x7fffec17a1c0)
    at kernel/qcoreapplication.cpp:610
#15 0x00007f488d025798 in QApplicationPrivate::sendMouseEvent (receiver=0x7e4a520, event=0x7fffec17a1c0, alienWidget=0x7e4a520,
    nativeWidget=0x6d26850, buttonDown=<value optimized out>, lastMouseReceiver=@0x7f488da7f010)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#16 0x00007f488d08f789 in QETWidget::translateMouseEvent (this=0x6d26850, event=<value optimized out>) at kernel/qapplication_x11.cpp:4448
#17 0x00007f488d08e7f5 in QApplication::x11ProcessEvent (this=0x7fffec17c2d0, event=0x7fffec17bd40) at kernel/qapplication_x11.cpp:3566
#18 0x00007f488d0b6f84 in x11EventSourceDispatch (s=0x15401b0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#19 0x00007f488537320a in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#20 0x00007f48853768e0 in ?? () from /usr/lib/libglib-2.0.so.0
#21 0x00007f4885376a7c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#22 0x00007f488c4ca52f in QEventDispatcherGlib::processEvents (this=0x1508d70, flags=<value optimized out>)
    at kernel/qeventdispatcher_glib.cpp:324
#23 0x00007f488d0b670f in QGuiEventDispatcherGlib::processEvents (this=0x848b7e0, flags=<value optimized out>)
    at kernel/qguieventdispatcher_glib.cpp:202
#24 0x00007f488c49f6a2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -333987792}) at kernel/qeventloop.cpp:149
#25 0x00007f488c49fa6d in QEventLoop::exec (this=0x7fffec17c070, flags={i = -333987712}) at kernel/qeventloop.cpp:200
#26 0x00007f488c4a1d34 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#27 0x00000000007969ff in main (argc=1, argv=0x7fffec17c868) at /home/tobias/digikam/graphics/digikam/digikam/main.cpp:184
Comment 3 Tobias Schula 2009-06-23 01:21:23 UTC
additional info:

I can open the images and save them elsewhere only downloading does not work. And digikam uses 50% of my cpu power, ergo one core completely when freezing.
Comment 4 Marcel Wiesweg 2009-06-23 16:53:59 UTC
Looks like an infinite loop in slotDownloadSelected.
Gilles any idea?
Comment 5 caulier.gilles 2009-06-23 18:59:23 UTC
Marcel,

No idea. the loop relevant is there :

http://lxr.kde.org/source/extragear/graphics/digikam/utilities/cameragui/cameraui.cpp#1548

Gilles
Comment 6 Marcel Wiesweg 2009-06-26 20:17:13 UTC
SVN commit 987831 by mwiesweg:

Infinite loop: Fix subtlety in incrementing loop when lastPhotoFirst is false

CCBUG: 197445

 M  +2 -2      cameraui.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=987831
Comment 7 Marcel Wiesweg 2009-06-26 20:18:10 UTC
Tobias, I am pretty sure this was the problem. Can you confirm?
Comment 8 Tobias Schula 2009-06-27 12:23:08 UTC
Yeah, revision 987831 fixed that problem, thanks!