[SCM] qtdeclarative packaging branch, experimental, updated. debian/5.7.0-1-8-gb3e45a7

Dmitry Shachnev mitya57 at moszumanska.debian.org
Thu Jul 21 17:47:06 UTC 2016


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

The following commit has been merged in the experimental branch:
commit 76ecff7270f8744c4a251403b8e7a1e4e0d6d266
Author: Dmitry Shachnev <mitya57 at gmail.com>
Date:   Wed Jul 20 21:21:33 2016 +0300

    Add fix_engine_64bits_big_endian.diff from upstream git (5.6 branch).
---
 debian/changelog                                 |  3 +++
 debian/patches/fix_engine_64bits_big_endian.diff | 22 ++++++++++++++++++++++
 debian/patches/series                            |  1 +
 3 files changed, 26 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 1dd9853..8dba4e8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,8 @@
 qtdeclarative-opensource-src (5.7.0-2) UNRELEASED; urgency=medium
 
+  [ Dmitry Shachnev ]
+  * Merge 5.6.1-5 from unstable; replace fix_engine_64bits_big_endian.diff
+    with a patch that got applied upstream.
 
  -- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org>  Wed, 20 Jul 2016 21:17:14 +0300
 
diff --git a/debian/patches/fix_engine_64bits_big_endian.diff b/debian/patches/fix_engine_64bits_big_endian.diff
new file mode 100644
index 0000000..fb0ee00
--- /dev/null
+++ b/debian/patches/fix_engine_64bits_big_endian.diff
@@ -0,0 +1,22 @@
+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
new file mode 100644
index 0000000..0e8068a
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+fix_engine_64bits_big_endian.diff

-- 
qtdeclarative packaging



More information about the pkg-kde-commits mailing list