[SCM] qtdeclarative packaging branch, ubuntu, updated. debian/5.6.1-11-108-g2918e4a

Timo Jyrinki timo at moszumanska.debian.org
Mon Oct 17 11:50:19 UTC 2016


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

The following commit has been merged in the ubuntu branch:
commit 3baf5f3b7e7e747f8a388f6c1bb05196bb22dcff
Author: Timo Jyrinki <timo.jyrinki at canonical.com>
Date:   Mon Oct 17 07:53:47 2016 +0000

    Use fix-V4-on-big-endian.patch version from upstream 5.6 branch.
---
 debian/changelog                          |  1 +
 debian/patches/fix-V4-on-big-endian.patch | 60 +++++++++++++++++--------------
 debian/patches/series                     |  6 ++--
 3 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 3e1e0af..a7b123f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,7 @@ qtdeclarative-opensource-src (5.6.1-11ubuntu1) UNRELEASED; urgency=medium
     - Upstream suggested update for arm64 (LP: #1630906)
   * Update symbols.
   * Merge with Debian 5.6.1-11 changes.
+  * Use fix-V4-on-big-endian.patch version from upstream 5.6 branch.
 
  -- Timo Jyrinki <timo-jyrinki at ubuntu.com>  Thu, 06 Oct 2016 14:39:07 +0000
 
diff --git a/debian/patches/fix-V4-on-big-endian.patch b/debian/patches/fix-V4-on-big-endian.patch
index c018129..0e127da 100644
--- a/debian/patches/fix-V4-on-big-endian.patch
+++ b/debian/patches/fix-V4-on-big-endian.patch
@@ -1,39 +1,42 @@
-Description: Fix V4 on big-endian
- We can't both invert offset position and inter-value positions of tag
- and value.
- .
- This patch changes 32-bit big-endian to use the same order inside
- the tag/value but just at different offsets. This also make it
- compatible with how we use it with doubles.
- .
- This fixes value/tag reads on 32-bit big-endian and offsets on 64-bit.
- .
- Patch adapted for Qt 5.6 branch by Dmitry Shachnev <mitya57 at debian.org>.
-Origin: upstream, https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=2a65834439772945
-Last-Update: 2016-10-06
+From a191de3f4dd777e8e60b4d3b5684b59d22be068d Mon Sep 17 00:00:00 2001
+From: Allan Sandfeld Jensen <allan.jensen at theqtcompany.com>
+Date: Mon, 12 Sep 2016 13:15:20 +0200
+Subject: [PATCH] Fix V4 on big-endian
 
+We can't both invert offset position and inter-value positions of tag
+and value.
+
+This patch changes 32-bit big-endian to use the same order inside
+the tag/value but just at different offsets. This also make it
+compatible with how we use it with doubles.
+
+This fixes value/tag reads on 32-bit big-endian and offsets on 64-bit.
+
+Task-number: QTBUG-56271
+Change-Id: I95cf792c29ac3f42a4018ce1f115193c143a0df0
+(cherry picked from commit 2a658344397729450f869138bf77e063a0a6166b)
+Reviewed-by: Shawn Rutledge <shawn.rutledge at qt.io>
+---
+ src/qml/jsruntime/qv4value_p.h | 13 +++++--------
+ 1 file changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/src/qml/jsruntime/qv4value_p.h b/src/qml/jsruntime/qv4value_p.h
+index 02425c5..ebe43b5 100644
 --- a/src/qml/jsruntime/qv4value_p.h
 +++ b/src/qml/jsruntime/qv4value_p.h
-@@ -92,22 +92,25 @@
- 
-     Q_ALWAYS_INLINE quint64 val() const { return _val; }
-     Q_ALWAYS_INLINE void setVal(quint64 v) { _val = v; }
-+
-+#if Q_BYTE_ORDER == Q_BIG_ENDIAN
-+    Q_ALWAYS_INLINE void setValue(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
-+    Q_ALWAYS_INLINE void setTag(quint32 v) { memcpy(&_val, &v, 4); }
-+#else
-     Q_ALWAYS_INLINE void setValue(quint32 v) { memcpy(&_val, &v, 4); }
-     Q_ALWAYS_INLINE void setTag(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
-+#endif
+@@ -158,19 +158,16 @@ public:
+     Q_ALWAYS_INLINE quint64 rawValue() const { return _val; }
+     Q_ALWAYS_INLINE void setRawValue(quint64 raw) { _val = raw; }
  
- #if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
+-#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN || defined(QV4_USE_64_BIT_VALUE_ENCODING)
++#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
      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)
++#else // !Q_LITTLE_ENDIAN
      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; }
@@ -46,3 +49,6 @@ Last-Update: 2016-10-06
  
  #if defined(V4_BOOTSTRAP)
      Q_ALWAYS_INLINE Heap::Base *m() const { Q_UNREACHABLE(); return Q_NULLPTR; }
+-- 
+2.9.3
+
diff --git a/debian/patches/series b/debian/patches/series
index 523c6e4..ed60ca5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -2,15 +2,15 @@
 QQuickItemView-forceLayout-Also-call-layout-when-d-f.patch
 qml_only_release_types_if_they_arent_referenced_anymore.patch
 no_lifetime_dse.diff
-fix-V4-on-big-endian.patch
 V4-Always-set-the-tag-when-boxing-a-pointer-in-QV4-V.patch
 Fix-QQmlEngine-crash-on-big-endian-64-bit-architectu.patch
+Add-a-facility-to-version-type-information-for-debug.patch
+V4-Free-up-2-address-bits-in-64bit-mode.patch
+fix-V4-on-big-endian.patch
 Flickable-fix-minXExtent-minYExtent-when-content-is-.patch
 QQuickWindow-Fill-out-timestamps-in-QHoverEvents-sen.patch
 Fix-visibility-of-properties-in-value-types.patch
 Revert-Remove-this-piece-of-code.patch
-Add-a-facility-to-version-type-information-for-debug.patch
-V4-Free-up-2-address-bits-in-64bit-mode.patch
 
 # Debian patches
 check_system_double-conversion.patch

-- 
qtdeclarative packaging



More information about the pkg-kde-commits mailing list