[SCM] libkexiv2 packaging branch, master, updated. debian/4.14.0-1-3-gfd3bc0a
Pino Toscano
pino at moszumanska.debian.org
Tue Oct 7 06:32:53 UTC 2014
Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-sc/libkexiv2.git;a=commitdiff;h=24cdd0a
The following commit has been merged in the master branch:
commit 24cdd0a636cc19455eab00195dc6cc17b4542c28
Author: Pino Toscano <pino at debian.org>
Date: Tue Oct 7 08:29:21 2014 +0200
KDE/4.14 branch pull (#763991)
- backport commit 25ad41274d0f4084554794ee91e183accfce781f to fix
out-of-bounds crashes when handling metadata
- backport commit 6b680149626a8b8b5524656ab4b2d9a4ce6cfbae to bump the
version to 2.3.2, so library users (e.g. digikam) can know this version
has the above fix
- backport commit 1af638424c3bc55e5ceac5f4ac6f48ee47f407a7 to avoid useless
change requests when no actual changes were done
---
debian/changelog | 11 ++
debian/patches/series | 3 +
...and-previous-strings-are-empty-do-nothing.patch | 32 ++++++
...vent-crash-if-index-if-out-of-QList-range.patch | 112 +++++++++++++++++++++
.../upstream_bump-the-version-to-2.3.2.patch | 26 +++++
5 files changed, 184 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index d1f66b3..aab617c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,17 @@ libkexiv2 (4:4.14.1-0r1) UNRELEASED; urgency=medium
[ Pino Toscano ]
* New upstream release.
+ * Backport few upstream patches (basically a KDE/4.14 branch pull):
+ - backport commit 25ad41274d0f4084554794ee91e183accfce781f to fix
+ out-of-bounds crashes when handling metadata; patch
+ upstream_Prevent-crash-if-index-if-out-of-QList-range.patch.
+ (Closes: #763991)
+ - backport commit 6b680149626a8b8b5524656ab4b2d9a4ce6cfbae to bump the
+ version to 2.3.2, so library users (e.g. digikam) can know this version
+ has the above fix; patch upstream_bump-the-version-to-2.3.2.patch.
+ - backport commit 1af638424c3bc55e5ceac5f4ac6f48ee47f407a7 to avoid useless
+ change requests when no actual changes were done; patch
+ upstream_If-edited-and-previous-strings-are-empty-do-nothing.patch.
-- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org> Tue, 07 Oct 2014 08:20:25 +0200
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..571d70b
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,3 @@
+upstream_Prevent-crash-if-index-if-out-of-QList-range.patch
+upstream_bump-the-version-to-2.3.2.patch
+upstream_If-edited-and-previous-strings-are-empty-do-nothing.patch
diff --git a/debian/patches/upstream_If-edited-and-previous-strings-are-empty-do-nothing.patch b/debian/patches/upstream_If-edited-and-previous-strings-are-empty-do-nothing.patch
new file mode 100644
index 0000000..dafb014
--- /dev/null
+++ b/debian/patches/upstream_If-edited-and-previous-strings-are-empty-do-nothing.patch
@@ -0,0 +1,32 @@
+From 1af638424c3bc55e5ceac5f4ac6f48ee47f407a7 Mon Sep 17 00:00:00 2001
+From: Gilles Caulier <caulier.gilles at gmail.com>
+Date: Sat, 13 Sep 2014 08:32:24 +0200
+Subject: [PATCH] If edited and previous strings are empty, do nothing. BUGS:
+ 152948 FIXED-IN: 4.12.2
+
+(cherry picked from commit d90dcdf2b3cff736176c723246a3522d1e2b1613)
+---
+ libkexiv2/altlangstredit.cpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/libkexiv2/altlangstredit.cpp b/libkexiv2/altlangstredit.cpp
+index 3e2e32d..987a3ba 100644
+--- a/libkexiv2/altlangstredit.cpp
++++ b/libkexiv2/altlangstredit.cpp
+@@ -458,6 +458,13 @@ void AltLangStrEdit::slotTextChanged()
+ QString editedText = d->valueEdit->toPlainText();
+ QString previousText = d->values.value(d->currentLanguage);
+
++ // Special case : if edited and previous strings are empty, do nothing.
++ // See bug #152948.
++ if (editedText.isEmpty() && previousText.isNull())
++ {
++ return;
++ }
++
+ if (editedText.isEmpty())
+ {
+ slotDeleteValue();
+--
+2.1.1
+
diff --git a/debian/patches/upstream_Prevent-crash-if-index-if-out-of-QList-range.patch b/debian/patches/upstream_Prevent-crash-if-index-if-out-of-QList-range.patch
new file mode 100644
index 0000000..24dcbc3
--- /dev/null
+++ b/debian/patches/upstream_Prevent-crash-if-index-if-out-of-QList-range.patch
@@ -0,0 +1,112 @@
+From 25ad41274d0f4084554794ee91e183accfce781f Mon Sep 17 00:00:00 2001
+From: Gilles Caulier <caulier.gilles at gmail.com>
+Date: Tue, 2 Sep 2014 14:04:26 +0200
+Subject: [PATCH] Prevent crash if index if out of QList range.
+
+BUG: 339144
+FIXED-IN: 4.14.2
+---
+ libkexiv2/kexiv2previews.cpp | 27 +++++++++++++++++++++++----
+ 1 file changed, 23 insertions(+), 4 deletions(-)
+
+diff --git a/libkexiv2/kexiv2previews.cpp b/libkexiv2/kexiv2previews.cpp
+index 1570f9c..5bb1f08 100644
+--- a/libkexiv2/kexiv2previews.cpp
++++ b/libkexiv2/kexiv2previews.cpp
+@@ -51,16 +51,17 @@ public:
+
+ void load(Exiv2::Image::AutoPtr image_)
+ {
+- image = image_;
++ image = image_;
+
+ image->readMetadata();
+
+- manager = new Exiv2::PreviewManager(*image);
++ manager = new Exiv2::PreviewManager(*image);
+ Exiv2::PreviewPropertiesList props = manager->getPreviewProperties();
+
+ // reverse order of list, which is smallest-first
+ Exiv2::PreviewPropertiesList::reverse_iterator it;
+- for (it = props.rbegin(); it != props.rend(); ++it)
++
++ for (it = props.rbegin() ; it != props.rend() ; ++it)
+ {
+ properties << *it;
+ }
+@@ -123,6 +124,7 @@ QSize KExiv2Previews::originalSize() const
+ {
+ if (d->image.get())
+ return QSize(d->image->pixelWidth(), d->image->pixelHeight());
++
+ return QSize();
+ }
+
+@@ -130,6 +132,7 @@ QString KExiv2Previews::originalMimeType() const
+ {
+ if (d->image.get())
+ return d->image->mimeType().c_str();
++
+ return QString();
+ }
+
+@@ -140,31 +143,46 @@ int KExiv2Previews::count()
+
+ int KExiv2Previews::dataSize(int index)
+ {
++ if (index < 0 || index >= size()) return 0;
++
+ return d->properties[index].size_;
+ }
+
+ int KExiv2Previews::width(int index)
+ {
++ if (index < 0 || index >= size()) return 0;
++
+ return d->properties[index].width_;
+ }
+
+ int KExiv2Previews::height(int index)
+ {
++ if (index < 0 || index >= size()) return 0;
++
+ return d->properties[index].height_;
+ }
+
+ QString KExiv2Previews::mimeType(int index)
+ {
++ if (index < 0 || index >= size()) return 0;
++
+ return QString::fromLatin1(d->properties[index].mimeType_.c_str());
+ }
+
+ QString KExiv2Previews::fileExtension(int index)
+ {
++ if (index < 0 || index >= size()) return 0;
++
+ return QString::fromLatin1(d->properties[index].extension_.c_str());
+ }
+
+ QByteArray KExiv2Previews::data(int index)
+ {
++ if (index < 0 || index >= size()) return QByteArray();
++
++ kDebug() << "index: " << index;
++ kDebug() << "d->properties: " << count();
++
+ try
+ {
+ Exiv2::PreviewImage image = d->manager->getPreviewImage(d->properties[index]);
+@@ -185,7 +203,8 @@ QByteArray KExiv2Previews::data(int index)
+ QImage KExiv2Previews::image(int index)
+ {
+ QByteArray previewData = data(index);
+- QImage image;
++ QImage image;
++
+ if (!image.loadFromData(previewData))
+ return QImage();
+
+--
+2.1.1
+
diff --git a/debian/patches/upstream_bump-the-version-to-2.3.2.patch b/debian/patches/upstream_bump-the-version-to-2.3.2.patch
new file mode 100644
index 0000000..cf60bbe
--- /dev/null
+++ b/debian/patches/upstream_bump-the-version-to-2.3.2.patch
@@ -0,0 +1,26 @@
+From 6b680149626a8b8b5524656ab4b2d9a4ce6cfbae Mon Sep 17 00:00:00 2001
+From: Pino Toscano <pino at kde.org>
+Date: Tue, 7 Oct 2014 07:59:24 +0200
+Subject: [PATCH] bump the version to 2.3.2
+
+This way digikam can know this version has the needed bugfixes for it.
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a4cbb05..ed57e12 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -78,7 +78,7 @@ MACRO_LOG_FEATURE(EXIV2_FOUND "Exiv2" "Required to build libkexiv2." "http://www
+ # Library API version
+ SET(KEXIV2_LIB_MAJOR_VERSION "2")
+ SET(KEXIV2_LIB_MINOR_VERSION "3")
+-SET(KEXIV2_LIB_PATCH_VERSION "1")
++SET(KEXIV2_LIB_PATCH_VERSION "2")
+
+ # Suffix to add at end of version string. Usual values are:
+ # "-git" : alpha code unstable from git. Do not use in production
+--
+2.1.1
+
--
libkexiv2 packaging
More information about the pkg-kde-commits
mailing list