[SCM] qtdeclarative packaging branch, ubuntu, updated. ubuntu/5.5.1-2ubuntu5-2-g562a93f

Timo Jyrinki timo at moszumanska.debian.org
Tue Apr 12 15:59:25 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtdeclarative.git;a=commitdiff;h=562a93f

The following commit has been merged in the ubuntu branch:
commit 562a93f5564782505972da59e76cfecb11445e77
Author: Timo Jyrinki <timo.jyrinki at canonical.com>
Date:   Tue Apr 12 12:40:04 2016 +0000

    debian/patches/Fix-crash-in-hasAtlasTexture.patch:
    
    * debian/patches/Fix-crash-in-hasAtlasTexture.patch:
      - Backport patch from Qt 5.6 (LP: #1563320)
---
 debian/changelog                                  |  7 ++++
 debian/patches/Fix-crash-in-hasAtlasTexture.patch | 47 +++++++++++++++++++++++
 debian/patches/series                             |  1 +
 3 files changed, 55 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 5ca0870..e1c2236 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+qtdeclarative-opensource-src (5.5.1-2ubuntu6) xenial; urgency=medium
+
+  * debian/patches/Fix-crash-in-hasAtlasTexture.patch:
+    - Backport patch from Qt 5.6 (LP: #1563320)
+
+ -- Timo Jyrinki <timo-jyrinki at ubuntu.com>  Tue, 12 Apr 2016 10:44:18 +0000
+
 qtdeclarative-opensource-src (5.5.1-2ubuntu5) xenial; urgency=medium
 
   * Update symbols from build logs.
diff --git a/debian/patches/Fix-crash-in-hasAtlasTexture.patch b/debian/patches/Fix-crash-in-hasAtlasTexture.patch
new file mode 100644
index 0000000..e605e13
--- /dev/null
+++ b/debian/patches/Fix-crash-in-hasAtlasTexture.patch
@@ -0,0 +1,47 @@
+From cef27bf90cbb8d4e6f36f6b77fa5efb361e01ad2 Mon Sep 17 00:00:00 2001
+From: Albert Astals Cid <albert.astals at canonical.com>
+Date: Tue, 29 Mar 2016 14:40:23 +0200
+Subject: [PATCH] Fix crash in hasAtlasTexture
+
+Check for the QSGTextureProvider not being 0 before asking for its texture,
+we are doing the same in the loop of QQuickShaderEffectMaterial::compare so
+it was forgotten to do it here.
+
+Valgrind trace of the crash i get without it
+==26317== Invalid read of size 8
+==26317==    at 0x652B73A: hasAtlasTexture(QVector<QSGTextureProvider*> const&) (qquickshadereffectnode.cpp:49)
+==26317==    by 0x652BABC: QQuickShaderEffectMaterial::compare(QSGMaterial const*) const (qquickshadereffectnode.cpp:396)
+==26317==    by 0x63D1BF6: QSGBatchRenderer::Renderer::prepareOpaqueBatches() (qsgbatchrenderer.cpp:1525)
+==26317==    by 0x63DE7A7: QSGBatchRenderer::Renderer::render() (qsgbatchrenderer.cpp:2611)
+==26317==    by 0x63E9D3E: QSGRenderer::renderScene(QSGBindable const&) (qsgrenderer.cpp:208)
+==26317==    by 0x63EA58A: QSGRenderer::renderScene(unsigned int) (qsgrenderer.cpp:168)
+==26317==    by 0x63FAA7D: QSGRenderContext::renderNextFrame(QSGRenderer*, unsigned int) (qsgcontext.cpp:558)
+==26317==    by 0x644540A: QQuickWindowPrivate::renderSceneGraph(QSize const&) (qquickwindow.cpp:383)
+==26317==    by 0x641541A: QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*) (qsgrenderloop.cpp:378)
+==26317==    by 0x6416520: QSGGuiThreadRenderLoop::event(QEvent*) (qsgrenderloop.cpp:474)
+==26317==    by 0x605F488: QCoreApplication::notify(QObject*, QEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.5.1)
+==26317==    by 0x605F5BA: QCoreApplication::notifyInternal(QObject*, QEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.5.1)
+==26317==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
+
+Change-Id: I3b07450438d98910fbbff9f8b7a3d9d851ed4e5d
+Reviewed-by: Michael Brasser <michael.brasser at live.com>
+---
+ src/quick/items/qquickshadereffectnode.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/quick/items/qquickshadereffectnode.cpp b/src/quick/items/qquickshadereffectnode.cpp
+index 954aa6c..95537fd 100644
+--- a/src/quick/items/qquickshadereffectnode.cpp
++++ b/src/quick/items/qquickshadereffectnode.cpp
+@@ -46,7 +46,7 @@ static bool hasAtlasTexture(const QVector<QSGTextureProvider *> &textureProvider
+ {
+     for (int i = 0; i < textureProviders.size(); ++i) {
+         QSGTextureProvider *t = textureProviders.at(i);
+-        if (t->texture() && t->texture()->isAtlasTexture())
++        if (t && t->texture() && t->texture()->isAtlasTexture())
+             return true;
+     }
+     return false;
+-- 
+2.7.4
+
diff --git a/debian/patches/series b/debian/patches/series
index d385c53..1dc3cbf 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -13,6 +13,7 @@ QQuickItem-fix-an-infinite-loop-nextItemInFocusChain.patch
 QQuickItem-fix-another-infinite-loop-in-nextItemInFo.patch
 QQuickItemView-forceLayout-Also-call-layout-when-d-f.patch
 qml-preserve-composite-singleton-types.patch
+Fix-crash-in-hasAtlasTexture.patch
 
 # Debian patches
 check_system_double-conversion.patch

-- 
qtdeclarative packaging



More information about the pkg-kde-commits mailing list