[SCM] qtdeclarative packaging branch, ubuntu+1, updated. debian/5.7.0-2-124-g74ffe53

Timo Jyrinki timo at moszumanska.debian.org
Fri Sep 16 07:48:12 UTC 2016


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

The following commit has been merged in the ubuntu+1 branch:
commit 74ffe532425ef0a6f4bc37bdab451fa2c7bc0a5e
Author: Timo Jyrinki <timo.jyrinki at canonical.com>
Date:   Fri Sep 16 07:46:57 2016 +0000

    Rebase patches, switch to latest upstream version of qqmlengine crash fix.
---
 ...ine-crash-on-big-endian-64-bit-architectu.patch | 11 +++++++----
 debian/patches/Fix-V4-on-big-endian.patch          |  4 ++--
 debian/patches/fix_engine_64bits_big_endian.diff   | 22 ----------------------
 debian/patches/series                              |  2 +-
 4 files changed, 10 insertions(+), 29 deletions(-)

diff --git a/debian/patches/Fix-QQmlEngine-crash-on-big-endian-64-bit-architectu.patch b/debian/patches/Fix-QQmlEngine-crash-on-big-endian-64-bit-architectu.patch
index 8bf3809..683283a 100644
--- a/debian/patches/Fix-QQmlEngine-crash-on-big-endian-64-bit-architectu.patch
+++ b/debian/patches/Fix-QQmlEngine-crash-on-big-endian-64-bit-architectu.patch
@@ -1,4 +1,4 @@
-From 1a55e5907f46166f1e96712d8a19dbf313de4a97 Mon Sep 17 00:00:00 2001
+From d6ac86f59250e05eb5e7db5bb8a45a85db1f0f25 Mon Sep 17 00:00:00 2001
 From: Maximiliano Curia <maxy at debian.org>
 Date: Tue, 19 Jul 2016 15:49:48 +0200
 Subject: [PATCH] Fix QQmlEngine crash on big endian 64 bit architectures
@@ -10,6 +10,9 @@ in a segfault.
 
 Task-number: QTBUG-54717
 Change-Id: I6b5ab6f213880b030795185c05e609d290168901
+Reviewed-by: Simon Hausmann <simon.hausmann at qt.io>
+Reviewed-by: Timo Jyrinki <timo.jyrinki at iki.fi>
+Reviewed-by: Erik Verbruggen <erik.verbruggen at qt.io>
 ---
  src/qml/jsruntime/qv4value_p.h | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
@@ -19,8 +22,8 @@ index 7c2bb31..5abf5ad 100644
 --- a/src/qml/jsruntime/qv4value_p.h
 +++ b/src/qml/jsruntime/qv4value_p.h
 @@ -96,13 +96,13 @@ public:
-     Q_ALWAYS_INLINE quint64 rawValue() const { return _val; }
-     Q_ALWAYS_INLINE void setRawValue(quint64 raw) { _val = raw; }
+     Q_ALWAYS_INLINE void setValue(quint32 v) { memcpy(&_val, &v, 4); }
+     Q_ALWAYS_INLINE void setTag(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
  
 -#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
 +#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN || defined(QV4_USE_64_BIT_VALUE_ENCODING)
@@ -35,5 +38,5 @@ index 7c2bb31..5abf5ad 100644
      static inline int tagOffset() { return 0; }
      Q_ALWAYS_INLINE void setTagValue(quint32 tag, quint32 value) { _val = quint64(value) << 32 | tag; }
 -- 
-2.8.1
+2.9.3
 
diff --git a/debian/patches/Fix-V4-on-big-endian.patch b/debian/patches/Fix-V4-on-big-endian.patch
index d696bed..38cf16d 100644
--- a/debian/patches/Fix-V4-on-big-endian.patch
+++ b/debian/patches/Fix-V4-on-big-endian.patch
@@ -23,8 +23,8 @@ index b2d6421..5ce1d16 100644
 --- a/src/qml/jsruntime/qv4value_p.h
 +++ b/src/qml/jsruntime/qv4value_p.h
 @@ -102,19 +102,16 @@ public:
-     Q_ALWAYS_INLINE quint64 rawValue() const { return _val; }
-     Q_ALWAYS_INLINE void setRawValue(quint64 raw) { _val = raw; }
+     Q_ALWAYS_INLINE void setValue(quint32 v) { memcpy(&_val, &v, 4); }
+     Q_ALWAYS_INLINE void setTag(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
  
 -#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN || defined(QV4_USE_64_BIT_VALUE_ENCODING)
 +#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
diff --git a/debian/patches/fix_engine_64bits_big_endian.diff b/debian/patches/fix_engine_64bits_big_endian.diff
deleted file mode 100644
index fb0ee00..0000000
--- a/debian/patches/fix_engine_64bits_big_endian.diff
+++ /dev/null
@@ -1,22 +0,0 @@
-Description: fix QQmlEngine crash on big endian 64 bit architectures (s390x)
-Origin: upstream, https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=d6ac86f59250e05e
-Last-Update: 2016-07-20
-
---- a/src/qml/jsruntime/qv4value_p.h
-+++ b/src/qml/jsruntime/qv4value_p.h
-@@ -101,13 +101,13 @@
-     Q_ALWAYS_INLINE void setValue(quint32 v) { memcpy(&_val, &v, 4); }
-     Q_ALWAYS_INLINE void setTag(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
- 
--#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
-+#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN || defined(QV4_USE_64_BIT_VALUE_ENCODING)
-     static inline int valueOffset() { return 0; }
-     static inline int tagOffset() { return 4; }
-     Q_ALWAYS_INLINE void setTagValue(quint32 tag, quint32 value) { _val = quint64(tag) << 32 | value; }
-     Q_ALWAYS_INLINE quint32 value() const { return _val & quint64(~quint32(0)); }
-     Q_ALWAYS_INLINE quint32 tag() const { return _val >> 32; }
--#else // !Q_LITTLE_ENDIAN
-+#else // !Q_LITTLE_ENDIAN && !defined(QV4_USE_64_BIT_VALUE_ENCODING)
-     static inline int valueOffset() { return 4; }
-     static inline int tagOffset() { return 0; }
-     Q_ALWAYS_INLINE void setTagValue(quint32 tag, quint32 value) { _val = quint64(value) << 32 | tag; }
diff --git a/debian/patches/series b/debian/patches/series
index 7fb6e19..6a18713 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,5 @@
 # Backported patches
-fix_engine_64bits_big_endian.diff
+Fix-QQmlEngine-crash-on-big-endian-64-bit-architectu.patch
 no_lifetime_dse.diff
 Fix-visibility-of-properties-in-value-types.patch
 Fix-V4-on-big-endian.patch

-- 
qtdeclarative packaging



More information about the pkg-kde-commits mailing list