Bug 141624 - Digikam crash when assigning a new tag to a large number of photos
Summary: Digikam crash when assigning a new tag to a large number of photos
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Tags-Engine (show other bugs)
Version: unspecified
Platform: openSUSE NetBSD
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-13 08:35 UTC by krienke
Modified: 2022-01-22 14:02 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 7.6.0


Attachments
Try to fix crash (2.07 KB, patch)
2007-02-14 17:08 UTC, Marcel Wiesweg
Details

Note You need to log in before you can comment on or make changes to this bug.
Description krienke 2007-02-13 08:35:39 UTC
Version:           0.9.1beta1 (using KDE KDE 3.5.6)
Installed from:    SuSE RPMs
Compiler:          gcc 4.1.2 
OS:                NetBSD

I run SuSE 10.2 with KDE 3.5.6 an libexiv2 0.12.
I tried to assing a single tag to a large set of photos (>400) by dragging the tag from the tag side bar onto a selected photo. In the menu that appears then I choose to assign the tag on all photos of the current album.

Then the process starts and about at 30% digikam crashed completely. I tried this with two different sets of photos, all in jpg from a Nikon D70 and it happens on both sets, so I guess it will happen always when a larger number of photos is modified in this way.

The terminal window I strated digikma from shows:
digikam: Dirty: /
digikam: Dirty: /tmp
digikam: /export/multimedia/photos/tmp/6543.jpg ==> Comment:
digikam: /export/multimedia/photos/tmp/6543.jpg ==> Rating: 0
/export/multimedia/photos/tmp/6543.jpg ==> Keywords: Leute
digikam: /export/multimedia/photos/tmp/6588.jpg ==> Comment:
digikam: /export/multimedia/photos/tmp/6588.jpg ==> Rating: 0
/export/multimedia/photos/tmp/6588.jpg ==> Keywords: Leute
digikam: /export/multimedia/photos/tmp/6580.jpg ==> Comment:
digikam: /export/multimedia/photos/tmp/6580.jpg ==> Rating: 0
/export/multimedia/photos/tmp/6580.jpg ==> Keywords: Leute
digikam: WARNING: No album found for ID: 4915295
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Leute
digikam: /export/multimedia/photos/tmp/6578.jpg ==> Comment:
digikam: /export/multimedia/photos/tmp/6578.jpg ==> Rating: 0
/export/multimedia/photos/tmp/6578.jpg ==> Keywords: Leute
KCrash: Application 'digikam' crashing...

kcrash says:
Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1246124336 (LWP 21908)]
[KCrash handler]
#9  0xb668f907 in QString::operator+= () from /usr/lib/qt3/lib/libqt-mt.so.3
#10 0xb7c75c1b in Digikam::ImageInfo::filePath ()
   from /opt/kde3/lib/libdigikam.so.0
#11 0xb7c1b865 in Digikam::AlbumIconView::changeTagOnImageInfos ()
   from /opt/kde3/lib/libdigikam.so.0
#12 0xb7c1d7ed in Digikam::AlbumIconView::contentsDropEvent ()
   from /opt/kde3/lib/libdigikam.so.0
#13 0xb64cde47 in QScrollView::viewportDropEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#14 0xb64cf12a in QScrollView::eventFilter ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#15 0xb63b9ccc in QObject::activate_filters ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#16 0xb63b9d3b in QObject::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#17 0xb63f2e3c in QWidget::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#18 0xb635b647 in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#19 0xb635c4f9 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#20 0xb6ad12b2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#21 0xb63068c9 in qt_handle_xdnd_drop () from /usr/lib/qt3/lib/libqt-mt.so.3
#22 0xb6306a97 in QDragManager::drop () from /usr/lib/qt3/lib/libqt-mt.so.3
#23 0xb6308981 in QDragManager::eventFilter ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#24 0xb635b60b in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#25 0xb635c641 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#26 0xb6ad12b2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#27 0xb62fb0f7 in QETWidget::translateMouseEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#28 0xb62fa01f in QApplication::x11ProcessEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#29 0xb630a91a in QEventLoop::processEvents ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#30 0xb63720e0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#31 0xb635af7f in QApplication::enter_loop ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#32 0xb63086d6 in QDragManager::drag () from /usr/lib/qt3/lib/libqt-mt.so.3
#33 0xb6369376 in QDragObject::drag () from /usr/lib/qt3/lib/libqt-mt.so.3
#34 0xb6369099 in QDragObject::drag () from /usr/lib/qt3/lib/libqt-mt.so.3
#35 0xb7d7c9dc in Digikam::TAlbumListView::startDrag ()
   from /opt/kde3/lib/libdigikam.so.0
#36 0xb649e0c8 in QListView::contentsMouseMoveEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#37 0xb7d7cf6c in Digikam::TAlbumListView::contentsMouseMoveEvent ()
   from /opt/kde3/lib/libdigikam.so.0
#38 0xb64d1cb1 in QScrollView::viewportMouseMoveEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#39 0xb64cf1c3 in QScrollView::eventFilter ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#40 0xb649cfd6 in QListView::eventFilter () from /usr/lib/qt3/lib/libqt-mt.so.3
#41 0xb63b9ccc in QObject::activate_filters ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#42 0xb63b9d3b in QObject::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#43 0xb63f2e3c in QWidget::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#44 0xb635b647 in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#45 0xb635c641 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#46 0xb6ad12b2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#47 0xb62fb0f7 in QETWidget::translateMouseEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#48 0xb62fa01f in QApplication::x11ProcessEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#49 0xb630a91a in QEventLoop::processEvents ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#50 0xb63720e0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#51 0xb6371f76 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#52 0xb635b00f in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#53 0x0804acf6 in main ()

When restarting digikam I can see that the tag has been assigned to the first "n" photos probably until it crashed. Assigning the same tag to the next still untagged photo works without any problem.

Thanks
Rainer
Comment 1 Marcel Wiesweg 2007-02-13 19:08:05 UTC
Does it crash if you assign the tag by selecting all images and adding the tag from the "Comments/tags" tab of the right sidebar?
Does it crash if you drag-and-drop the other way, dragging all selected pictures on the tag in the left or right sidebar?
Comment 2 krienke 2007-02-13 20:45:38 UTC
Am Dienstag, 13. Februar 2007 schrieb Marcel Wiesweg:

> ------- Additional Comments From marcel.wiesweg gmx de  2007-02-13 19:08
> ------- Does it crash if you assign the tag by selecting all images and
> adding the tag from the "Comments/tags" tab of the right sidebar? Does it
> crash if you drag-and-drop the other way, dragging all selected pictures on
> the tag in the left or right sidebar?


No it does not crash in these situations. Only if I drag the tag one photo and 
then say "assign tag to all photos". 

However I found out one more thing. By default I have activated the option to 
store tags in the photos IPTC metadata. If I turn this option of in digikams 
setup then the crash does no longer happen.

Rainer
Comment 3 Marcel Wiesweg 2007-02-14 17:08:11 UTC
Created attachment 19691 [details]
Try to fix crash

Still not reproducible here...I have three ideas:

- recompile with --enable-debug, run digikam under gdb and provide a backtrace
(instructions in HACKING file)
- try if the attached patch fixes the problem
- in your debug log, there are the lines

digikam: WARNING: No album found for ID: 4915295 // take the ID shown here
 digikam:  ==> Comment: 
 digikam:  ==> Rating: 0 
 (null) ==> Keywords: Leute 

This is probably the problem! Please check then if there is such an image in
your database:
 sqlite3 <your library path>/digikam3.db "SELECT Albums.url, Images.name FROM
Images JOIN Albums ON Images.dirid = Albums.id WHERE Images.id=<ID from debug
log>;
Comment 4 krienke 2007-02-14 20:07:20 UTC
Am Mittwoch, 14. Februar 2007 schrieb Marcel Wiesweg:

> - recompile with --enable-debug, run digikam under gdb and provide a
> backtrace (instructions in HACKING file)
> - try if the attached patch fixes the problem
> - in your debug log, there are the lines


Ok, I did. Here are the last lines up to the crash:

(gdb) run
Starting program: /opt/kde3/bin/digikam
Failed to read a valid object file image from memory.
[Thread debugging using libthread_db enabled]
[New Thread -1245612336 (LWP 26130)]
[New Thread -1247687792 (LWP 26149)]
[New Thread -1256080496 (LWP 26150)]
[Thread -1247687792 (LWP 26149) exited]
[Thread -1256080496 (LWP 26150) exited]
digikam: ScanLib: Nach nicht existierenden Alben suchen: 3632 ms
digikam: ScanLib: Nach Einträgen, die nicht in der Datenbank oder auf der 
Festpl
atte sind, suchen: 9828 ms
digikam: ScanLib: Einträge ohne Datum werden aktualisiert: 76 ms
digikam: Found dcraw version: 8.41
KIPI (loading): WARNING: KIPI::PluginLoader:: createInstanceFromLibrary 
returned
 0 for MPEG-Encoder (kipiplugin_mpegencoder) with error number 3
KIPI (loading): WARNING: KLibLoader says: Bibliotheksdateien 
<b>kipiplugin_mpege
ncoder.la</b> sind nicht in den Pfaden auffindbar.
digikam: ImagePlugin_Core plugin loaded
digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Core
digikam: ImagePlugin_RainDrop plugin loaded
...
...
digikam: Dirty: /
digikam: Dirty: /rainer/tmp
digikam: /home/family/photos/rainer/tmp/dsc_2579.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2579.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2579.jpg ==> Keywords: Menschen
digikam: /home/family/photos/rainer/tmp/dsc_2580.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2580.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2580.jpg ==> Keywords: Menschen
digikam: /home/family/photos/rainer/tmp/dsc_2581.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2581.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2581.jpg ==> Keywords: Menschen
digikam: /home/family/photos/rainer/tmp/dsc_2584.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2584.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2584.jpg ==> Keywords: Menschen
digikam: Dirty: /rainer/tmp
digikam: /home/family/photos/rainer/tmp/dsc_2585.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2585.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2585.jpg ==> Keywords: Menschen
digikam: /home/family/photos/rainer/tmp/dsc_2586.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2586.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2586.jpg ==> Keywords: Menschen
digikam: /home/family/photos/rainer/tmp/dsc_2587.jpg ==> Comment:
digikam: /home/family/photos/rainer/tmp/dsc_2587.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2587.jpg ==> Keywords: Menschen
digikam: Dirty: /
digikam: /home/family/photos/rainer/tmp/dsc_2588.jpg ==> Comment: Die Republic 
Street
digikam: /home/family/photos/rainer/tmp/dsc_2588.jpg ==> Rating: 0
/home/family/photos/rainer/tmp/dsc_2588.jpg ==> Keywords: Menschen
QDateTime::fromString: Parameter out of range

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1245612336 (LWP 26130)]
0xb670c907 in QString::operator+= () from /usr/lib/qt3/lib/libqt-mt.so.3


Then I took a look at the photo dsc_2588.jpg with exiv2:

Filename        : dsc_2588.jpg
Filesize        : 1500216 Bytes
Camera make     : NIKON CORPORATION
Camera model    : NIKON D70
Image timestamp : 2006:10:07 10:28:50
Image number    :
Exposure time   : 1/90 s
Aperture        : F8
Exposure bias   : +1/2
Flash           : No flash
Flash bias      :
Focal length    : 48.0 mm (35 mm equivalent: 72.0 mm)
Subject distance:
ISO speed       : 200
Exposure mode   : Aperture priority
Metering mode   : Multi-segment
Macro mode      :
Image quality   : NORMAL
Exif Resolution : 2000 x 3008
White balance   : AUTO
Thumbnail       : JPEG, 3983 Bytes
Copyright       :
Exif comment    : Die Republic Street

I cannot anything wrong in this file.

>
> digikam: WARNING: No album found for ID: 4915295 // take the ID shown here
>  digikam:  ==> Comment:
>  digikam:  ==> Rating: 0
>  (null) ==> Keywords: Leute


This message happened only one time I do not see it any longer. But the crash 
still happens each and every time I assign a tag to all the photos. So this 
is probably not the reason.


Rainer
Comment 5 krienke 2007-02-15 09:53:36 UTC
Sorry in my report yesterday I forgot the  backtrace :-( . Well I tried again 
and this time (on another host with not 100% the same photos) and I did a 
backtrace. By the this time there are again the messages "No album found for 
ID: 7471215". But using the SQL-statement you gave to me a query for an id 
like the one above results in an empty string.

(gdb) run
....
digikam: WARNING: No album found for ID: 3080307
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Uni
digikam: WARNING: No album found for ID: 7471215
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Uni
digikam: WARNING: No album found for ID: 7471215
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Uni
digikam: WARNING: No album found for ID: 3080307
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Uni
digikam: WARNING: No album found for ID: 3080307
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Uni
digikam: Dirty: /
digikam: WARNING: No album found for ID: 7536741
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Asien,Orte/Uni
digikam: WARNING: No album found for ID: 7471215
digikam:  ==> Comment:
digikam:  ==> Rating: 0
(null) ==> Keywords: Orte/Uni

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1245804848 (LWP 21808)]
0xb66dd907 in QString::operator+= () from /usr/lib/qt3/lib/libqt-mt.so.3

(gdb) bt
#0  0xb66dd907 in QString::operator+= () from /usr/lib/qt3/lib/libqt-mt.so.3
#1  0x0804b1ec in operator+ (s1=@0xbfe40f04, s2=@0x86179cc)
    at /usr/lib/qt3/include/qstring.h:1038
#2  0xb7cf8bbf in Digikam::ImageInfo::filePath (this=0x86179c0)
    at imageinfo.cpp:185
#3  0xb7c9d8b0 in Digikam::AlbumIconView::changeTagOnImageInfos (
    this=0x81386b8, list=@0xbfe4144c, tagIDs=@0xbfe41448, addOrRemove=true,
    progress=true) at albumiconview.cpp:1335
#4  0xb7c9f46d in Digikam::AlbumIconView::contentsDropEvent (this=0x81386b8,
    event=0xbfe418ec) at albumiconview.cpp:1212
#5  0xb651be47 in QScrollView::viewportDropEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#6  0xb651d12a in QScrollView::eventFilter ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#7  0xb6407ccc in QObject::activate_filters ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#8  0xb6407d3b in QObject::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#9  0xb6440e3c in QWidget::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#10 0xb63a9647 in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#11 0xb63aa4f9 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#12 0xb6b212b2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#13 0xb63548c9 in qt_handle_xdnd_drop () from /usr/lib/qt3/lib/libqt-mt.so.3
#14 0xb6354a97 in QDragManager::drop () from /usr/lib/qt3/lib/libqt-mt.so.3
#15 0xb6356981 in QDragManager::eventFilter ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#16 0xb63a960b in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#17 0xb63aa641 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#18 0xb6b212b2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#19 0xb63490f7 in QETWidget::translateMouseEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#20 0xb634801f in QApplication::x11ProcessEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#21 0xb635891a in QEventLoop::processEvents ()
#22 0xb63c00e0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#23 0xb63a8f7f in QApplication::enter_loop ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#24 0xb63566d6 in QDragManager::drag () from /usr/lib/qt3/lib/libqt-mt.so.3
#25 0xb63b7376 in QDragObject::drag () from /usr/lib/qt3/lib/libqt-mt.so.3
#26 0xb63b7099 in QDragObject::drag () from /usr/lib/qt3/lib/libqt-mt.so.3
#27 0xb7e0a3f4 in Digikam::TAlbumListView::startDrag (this=0x8262d58)
    at talbumlistview.cpp:229
#28 0xb64ec0c8 in QListView::contentsMouseMoveEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#29 0xb7e0a7b7 in Digikam::TAlbumListView::contentsMouseMoveEvent (
    this=0x8262d58, e=0xbfe422e4) at talbumlistview.cpp:138
#30 0xb651fcb1 in QScrollView::viewportMouseMoveEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#31 0xb651d1c3 in QScrollView::eventFilter ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#32 0xb64eafd6 in QListView::eventFilter () 
from /usr/lib/qt3/lib/libqt-mt.so.3
#33 0xb6407ccc in QObject::activate_filters ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#34 0xb6407d3b in QObject::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#35 0xb6440e3c in QWidget::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#36 0xb63a9647 in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#37 0xb63aa641 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#38 0xb6b212b2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#39 0xb63490f7 in QETWidget::translateMouseEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#40 0xb634801f in QApplication::x11ProcessEvent ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#41 0xb635891a in QEventLoop::processEvents ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#42 0xb63c00e0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#43 0xb63bff76 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#44 0xb63a900f in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#45 0x0804afb8 in main (argc=-1208703828, argv=0xb5d243a2) at main.cpp:306

Rainer
Comment 6 Marcel Wiesweg 2007-02-15 19:13:31 UTC
Thanks for your debugging.
It still seems that the ImageInfos list the method operates on is invalid, I dont think you have 7 million images ;-)
This would explain the crash, it happens when a member variable of the invalid object is accessed.
I don't know when and where the relevant object are deleted. I will commit the patch anyway because now that the UI is not locked while tags are applied, I can imagine situations where this list becomes invalid. But I cannot proof that the patch solves the problem.
Comment 7 Marcel Wiesweg 2007-02-15 19:16:45 UTC
SVN commit 633912 by mwiesweg:

Pass a copy of current ImageInfo list to changeTagOnImageInfos

CCBUG: 141624


 M  +6 -6      albumiconview.cpp  


--- trunk/extragear/graphics/digikam/digikam/albumiconview.cpp #633911:633912
@@ -1194,7 +1194,7 @@
                                                i18n("Assign tag to pictures. Please wait..."));
 
                     // get selected image infos
-                    QPtrList<ImageInfo> infos = selectedImageInfos(false);
+                    QPtrList<ImageInfo> infos = selectedImageInfos(true);
                     // add droppted item
                     AlbumIconItem *dropItem = findItem(event->pos());
                     if (dropItem)
@@ -1209,7 +1209,7 @@
                     emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                                i18n("Assign tag to pictures. Please wait..."));
 
-                    changeTagOnImageInfos(allImageInfos(false), QValueList<int>() << tagID, true, true);
+                    changeTagOnImageInfos(allImageInfos(true), QValueList<int>() << tagID, true, true);
 
                     emit signalProgressBarMode(StatusProgressBar::TextMode, QString::null);
                     break;
@@ -1275,7 +1275,7 @@
                                             i18n("Assign tags to pictures. Please wait..."));
 
                 // get selected image infos
-                QPtrList<ImageInfo> infos = selectedImageInfos(false);
+                QPtrList<ImageInfo> infos = selectedImageInfos(true);
                 // add droppted item
                 AlbumIconItem *dropItem = findItem(event->pos());
                 if (dropItem)
@@ -1290,7 +1290,7 @@
                 emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                             i18n("Assign tags to pictures. Please wait..."));
 
-                changeTagOnImageInfos(allImageInfos(false), tagIDs, true, true);
+                changeTagOnImageInfos(allImageInfos(true), tagIDs, true, true);
 
                 emit signalProgressBarMode(StatusProgressBar::TextMode, QString::null);
                 break;
@@ -1865,7 +1865,7 @@
     emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                 i18n("Assign tag to pictures. Please wait..."));
 
-    changeTagOnImageInfos(selectedImageInfos(false), QValueList<int>() << tagID, true, true);
+    changeTagOnImageInfos(selectedImageInfos(true), QValueList<int>() << tagID, true, true);
 
     emit signalProgressBarMode(StatusProgressBar::TextMode, QString::null);
 }
@@ -1875,7 +1875,7 @@
     emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                 i18n("Remove tag from pictures. Please wait..."));
 
-    changeTagOnImageInfos(selectedImageInfos(false), QValueList<int>() << tagID, false, true);
+    changeTagOnImageInfos(selectedImageInfos(true), QValueList<int>() << tagID, false, true);
 
     emit signalProgressBarMode(StatusProgressBar::TextMode, QString::null);
 }
Comment 8 Marcel Wiesweg 2007-02-17 23:11:12 UTC
<krienke@uni-koblenz.de>:
> Thanks for the patch. I tried it and it solved the problem the crash does no 
> longer happen.

Closing now.