Hello community,

here is the log from the commit of package digikam for openSUSE:Factory checked 
in at 2014-10-01 11:22:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/digikam (Old)
 and      /work/SRC/openSUSE:Factory/.digikam.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "digikam"

Changes:
--------
--- /work/SRC/openSUSE:Factory/digikam/digikam.changes  2014-09-19 
13:55:44.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.digikam.new/digikam.changes     2014-10-01 
11:22:06.000000000 +0200
@@ -1,0 +2,13 @@
+Wed Sep 24 17:47:04 UTC 2014 - [email protected]
+
+- Added handle_right_libkexiv2_version.diff and
+  handle_right_libkexiv2_version2.diff, kde#339144, bnc#898260
+
+-------------------------------------------------------------------
+Tue Sep 23 15:55:06 UTC 2014 - [email protected]
+
+- Add bug325580.patch: Fix job reset when it's done : do not return
+  directly is an error appera with a job, without to reset job.
+  kde#325580, kde#339210
+
+-------------------------------------------------------------------

New:
----
  bug325580.patch
  handle_right_libkexiv2_version.diff
  handle_right_libkexiv2_version2.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ digikam.spec ++++++
--- /var/tmp/diff_new_pack.7WWdxv/_old  2014-10-01 11:22:08.000000000 +0200
+++ /var/tmp/diff_new_pack.7WWdxv/_new  2014-10-01 11:22:08.000000000 +0200
@@ -33,6 +33,12 @@
 Patch5:         digikam_no_build_vkontakte.diff
 # PATCH-FIX-UPSTREAM digikam-3.0.0.no-kdcraw.version-check.patch -- version 
check for libkdcraw currently broken
 Patch6:         digikam-3.0.0.no-kdcraw.version-check.patch
+# PATCH-FIX-UPSTREAM bug325580.patch -- Fix job reset when it's done : do not 
return directly is an error appera with a job, without to reset job.
+Patch7:         bug325580.patch
+# PATCH-FIX-UPSTREAM handle_right_libkexiv2_version.diff
+Patch8:         handle_right_libkexiv2_version.diff
+# PATCH-FIX-UPSTREAM handle_right_libkexiv2_version2.diff
+Patch9:         handle_right_libkexiv2_version2.diff
 BuildRequires:  ImageMagick-devel
 BuildRequires:  bison
 BuildRequires:  boost-devel
@@ -238,6 +244,9 @@
 %patch3
 %patch5
 %patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
 
 # Remove build time references so build-compare can do its work
 FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e 
%%Y')

++++++ bug325580.patch ++++++
commit d523a9768ab8276860c76e02b9d9b598a3d607f9
Author: Gilles Caulier <[email protected]>
Date:   Thu Sep 11 19:40:30 2014 +0200

    Fix job reset when it's done : do not return directly is an error appera 
with a job, without to reset job.
    Fix broken signal/slot connection.
    BUGS: 325580
    FIXED-IN: 4.4.0

diff --git a/digikam/album/albumlabelstreeview.cpp 
b/digikam/album/albumlabelstreeview.cpp
index 2e1ff30..2047cdf 100644
--- a/core/digikam/album/albumlabelstreeview.cpp
+++ b/core/digikam/album/albumlabelstreeview.cpp
@@ -934,7 +934,6 @@ void AlbumLabelsSearchHandler::slotResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), job->errorString(),
                              DigikamApp::instance(), 
DigikamApp::instance()->windowTitle());
-        return;
     }
 }
 
diff --git a/digikam/album/albummanager.cpp b/digikam/album/albummanager.cpp
index bd05e27..02452b0 100644
--- a/core/digikam/album/albummanager.cpp
+++ b/core/digikam/album/albummanager.cpp
@@ -2969,7 +2969,6 @@ void AlbumManager::slotAlbumsJobResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), job->errorString(),
                              0, i18n("digiKam"));
-        return;
     }
 }
 
@@ -3000,7 +2999,6 @@ void AlbumManager::slotPeopleJobResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), job->errorString(),
                              0, i18n("digiKam"));
-        return;
     }
 }
 
@@ -3044,7 +3042,6 @@ void AlbumManager::slotTagsJobResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), job->errorString(),
                              0, i18n("digiKam"));
-        return;
     }
 }
 
@@ -3075,7 +3072,6 @@ void AlbumManager::slotDatesJobResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), job->errorString(),
                              0, i18n("digiKam"));
-        return;
     }
 
     emit signalAllDAlbumsLoaded();
diff --git a/libs/models/imagealbummodel.cpp b/libs/models/imagealbummodel.cpp
index 7681fa3..5486b55 100644
--- a/core/libs/models/imagealbummodel.cpp
+++ b/core/libs/models/imagealbummodel.cpp
@@ -346,7 +346,6 @@ void ImageAlbumModel::slotResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), job->errorString(),
                              DigikamApp::instance(), 
DigikamApp::instance()->windowTitle());
-        return;
     }
 }
 
diff --git a/showfoto/main/showfoto.cpp b/showfoto/main/showfoto.cpp
index 4d8ff09..9d407f7 100644
--- a/core/showfoto/main/showfoto.cpp
+++ b/core/showfoto/main/showfoto.cpp
@@ -912,7 +912,7 @@ void ShowFoto::saveAsIsComplete()
 
     // Pop-up a message to bring user when save is done.
     Digikam::DNotificationWrapper("editorsavefilecompleted", i18n("Image saved 
successfully"),
-                                    this, windowTitle());
+                                  this, windowTitle());
 */
 }
 
diff --git a/utilities/maintenance/duplicatesfinder.cpp 
b/utilities/maintenance/duplicatesfinder.cpp
index 2636d7d..9ed2f9e 100644
--- a/core/utilities/maintenance/duplicatesfinder.cpp
+++ b/core/utilities/maintenance/duplicatesfinder.cpp
@@ -110,7 +110,7 @@ void DuplicatesFinder::slotStart()
     d->job->addMetaData("threshold",  QString::number(thresh));
 
     connect(d->job, SIGNAL(result(KJob*)),
-            this, SLOT(slotDone(KJob*)));
+            this, SLOT(slotDone()));
 
     connect(d->job, SIGNAL(totalAmount(KJob*,KJob::Unit,qulonglong)),
             this, 
SLOT(slotDuplicatesSearchTotalAmount(KJob*,KJob::Unit,qulonglong)));
@@ -139,10 +139,9 @@ void DuplicatesFinder::slotDone()
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), d->job->errorString(),
                              DigikamApp::instance(), 
DigikamApp::instance()->windowTitle());
-        return;
     }
 
-    d->job = NULL;
+    d->job = 0;
     MaintenanceTool::slotDone();
 }
 
@@ -151,7 +150,7 @@ void DuplicatesFinder::slotCancel()
     if (d->job)
     {
         d->job->kill();
-        d->job = NULL;
+        d->job = 0;
     }
 
     MaintenanceTool::slotCancel();
diff --git a/utilities/maintenance/imageinfojob.cpp 
b/utilities/maintenance/imageinfojob.cpp
index 397601e..9efe80e 100644
--- a/core/utilities/maintenance/imageinfojob.cpp
+++ b/core/utilities/maintenance/imageinfojob.cpp
@@ -110,6 +110,8 @@ bool ImageInfoJob::isRunning() const
 
 void ImageInfoJob::slotResult(KJob* job)
 {
+    d->job = 0;
+
     if (job->error())
     {
         kWarning() << "Failed to list url: " << job->errorString();
@@ -117,11 +119,8 @@ void ImageInfoJob::slotResult(KJob* job)
         // Pop-up a message about the error.
         DNotificationWrapper(QString(), d->job->errorString(),
                              DigikamApp::instance(), 
DigikamApp::instance()->windowTitle());
-        return;
     }
 
-    d->job = 0;
-
     emit signalCompleted();
 }
 
++++++ handle_right_libkexiv2_version.diff ++++++
commit 573069e8cd3b7155582e0c7be3625c0cc4879619
Author: Gilles Caulier <[email protected]>
Date:   Tue Sep 23 09:49:20 2014 +0200

    Handle right libkexiv2 version to extract preview and prevent crash in 
Exiv2 preview extractor.
    CCBUGS: 339144

diff --git a/core/libs/threadimageio/thumbnailcreator.cpp 
b/core/libs/threadimageio/thumbnailcreator.cpp
index ed07d0d..9f238a4 100644
--- a/core/libs/threadimageio/thumbnailcreator.cpp
+++ b/core/libs/threadimageio/thumbnailcreator.cpp
@@ -62,6 +62,7 @@
 
 #include <libkexiv2/kexiv2previews.h>
 #include <libkexiv2/rotationmatrix.h>
+#include <libkexiv2/version.h>
 
 // Local includes
 
@@ -519,6 +520,9 @@ ThumbnailImage ThumbnailCreator::createT
             KDcraw::loadHalfPreview(qimage, path);
         }
 
+        // See bug #339144 : only handle preview if right libkexiv2 version is 
used.
+#if KEXIV2_VERSION >= 0x020302
+
         // Special case with DNG file. See B.K.O #338081
         if (qimage.isNull())
         {
@@ -528,6 +532,9 @@ ThumbnailImage ThumbnailCreator::createT
             qimage = preview.image();
         }
             
+
+#endif
+
         // DImg-dependent loading methods: TIFF, PNG, everything supported by 
QImage
         if (qimage.isNull() && !failedAtDImg)
         {
++++++ handle_right_libkexiv2_version2.diff ++++++
commit e2eeb730d02aad858f15c6f35f2a6b6beb38acf5
Author: Gilles Caulier <[email protected]>
Date:   Tue Sep 23 10:28:39 2014 +0200

    Another place where we need to handle right libkexiv2 version to extract 
preview and prevent crash in Exiv2 preview extractor.
    CCBUGS: 339144

diff --git a/core/libs/threadimageio/previewtask.cpp 
b/core/libs/threadimageio/previewtask.cpp
index 3c3b72a..99bb4d6 100644
--- a/core/libs/threadimageio/previewtask.cpp
+++ b/core/libs/threadimageio/previewtask.cpp
@@ -254,7 +254,11 @@ void PreviewLoadingTask::execute()
             // require at least half preview size
             if (qMax(previews.width(), previews.height()) >= sizeLimit)
             {
+
+                // See bug #339144 : only handle preview if right libkexiv2 
version is used.
+#if KEXIV2_VERSION >= 0x020302
                 qimage = previews.image();
+#endif
 
                 if (!qimage.isNull())
                 {
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to