public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwebengine/files/, dev-qt/qtcore/files/, dev-qt/qtsql/files/, ...
@ 2018-05-10 16:40 Andreas Sturmlechner
  0 siblings, 0 replies; only message in thread
From: Andreas Sturmlechner @ 2018-05-10 16:40 UTC (permalink / raw
  To: gentoo-commits

commit:     acd0ddbca7c809bd883e4c06ec1e0ca7ca3b8125
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu May 10 16:39:35 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu May 10 16:40:11 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=acd0ddbc

dev-qt: Drop unused patches

 dev-qt/qtcore/files/qtcore-5.7.1-qipm.patch        | 152 -------------
 dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-1.patch     | 252 ---------------------
 dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-2.patch     | 195 ----------------
 dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch    |  39 ----
 dev-qt/qtgui/files/qtgui-5.7.1-x32.patch           |  34 ---
 dev-qt/qtsql/files/qtsql-5.7.1-mariadb.patch       |  56 -----
 .../qtwebengine-5.7.0-fix-system-ffmpeg.patch      |  13 --
 .../files/qtwebengine-5.7.0-icu58.patch            |  51 -----
 .../files/qtwebengine-5.7.0-undef-madv_free.patch  |  33 ---
 .../qtwebengine-5.7.1-fix-audio-detection.patch    |  23 --
 .../files/qtwebengine-5.7.1-gcc-7.patch            | 144 ------------
 11 files changed, 992 deletions(-)

diff --git a/dev-qt/qtcore/files/qtcore-5.7.1-qipm.patch b/dev-qt/qtcore/files/qtcore-5.7.1-qipm.patch
deleted file mode 100644
index abea1458807..00000000000
--- a/dev-qt/qtcore/files/qtcore-5.7.1-qipm.patch
+++ /dev/null
@@ -1,152 +0,0 @@
-From baad82d242a4d8c1af6c87faaa7f25584183fd53 Mon Sep 17 00:00:00 2001
-From: Stephen Kelly <steveire@gmail.com>
-Date: Tue, 20 Dec 2016 00:44:12 +0000
-Subject: [PATCH] QIPM: Persist model indexes after emitting layoutChange, not
- before
-
-Callers can persist a QModelIndex which was not persisted before in a
-slot connected to the signal, and such a persisted index must be updated
-in the course of the layoutChange.
-
-Store the indexes to persist after emitting the signal.
-
-Task-number: QTBUG-32981
-Change-Id: Ibee4c0d84817d72603a03fe5b22fdeefeac0695e
-Reviewed-by: David Faure <david.faure@kdab.com>
----
- src/corelib/itemmodels/qidentityproxymodel.cpp     | 18 ++---
- .../tst_qidentityproxymodel.cpp                    | 76 ++++++++++++++++++++++
- 2 files changed, 85 insertions(+), 9 deletions(-)
-
-diff --git a/src/corelib/itemmodels/qidentityproxymodel.cpp b/src/corelib/itemmodels/qidentityproxymodel.cpp
-index e537793..7c30679 100644
---- a/src/corelib/itemmodels/qidentityproxymodel.cpp
-+++ b/src/corelib/itemmodels/qidentityproxymodel.cpp
-@@ -496,15 +496,6 @@ void QIdentityProxyModelPrivate::_q_sourceLayoutAboutToBeChanged(const QList<QPe
- {
-     Q_Q(QIdentityProxyModel);
- 
--    const auto proxyPersistentIndexes = q->persistentIndexList();
--    for (const QPersistentModelIndex &proxyPersistentIndex : proxyPersistentIndexes) {
--        proxyIndexes << proxyPersistentIndex;
--        Q_ASSERT(proxyPersistentIndex.isValid());
--        const QPersistentModelIndex srcPersistentIndex = q->mapToSource(proxyPersistentIndex);
--        Q_ASSERT(srcPersistentIndex.isValid());
--        layoutChangePersistentIndexes << srcPersistentIndex;
--    }
--
-     QList<QPersistentModelIndex> parents;
-     parents.reserve(sourceParents.size());
-     for (const QPersistentModelIndex &parent : sourceParents) {
-@@ -518,6 +509,15 @@ void QIdentityProxyModelPrivate::_q_sourceLayoutAboutToBeChanged(const QList<QPe
-     }
- 
-     q->layoutAboutToBeChanged(parents, hint);
-+
-+    const auto proxyPersistentIndexes = q->persistentIndexList();
-+    for (const QPersistentModelIndex &proxyPersistentIndex : proxyPersistentIndexes) {
-+        proxyIndexes << proxyPersistentIndex;
-+        Q_ASSERT(proxyPersistentIndex.isValid());
-+        const QPersistentModelIndex srcPersistentIndex = q->mapToSource(proxyPersistentIndex);
-+        Q_ASSERT(srcPersistentIndex.isValid());
-+        layoutChangePersistentIndexes << srcPersistentIndex;
-+    }
- }
- 
- void QIdentityProxyModelPrivate::_q_sourceLayoutChanged(const QList<QPersistentModelIndex> &sourceParents, QAbstractItemModel::LayoutChangeHint hint)
-diff --git a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp
-index e946f31..564b854 100644
---- a/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp
-+++ b/tests/auto/corelib/itemmodels/qidentityproxymodel/tst_qidentityproxymodel.cpp
-@@ -68,6 +68,8 @@ private slots:
- 
-     void itemData();
- 
-+    void persistIndexOnLayoutChange();
-+
- protected:
-     void verifyIdentity(QAbstractItemModel *model, const QModelIndex &parent = QModelIndex());
- 
-@@ -377,5 +379,79 @@ void tst_QIdentityProxyModel::itemData()
-     QCOMPARE(proxy.itemData(topIndex).value(Qt::DisplayRole).toString(), QStringLiteral("Monday_appended"));
- }
- 
-+void dump(QAbstractItemModel* model, QString const& indent = " - ", QModelIndex const& parent = {})
-+{
-+    for (auto row = 0; row < model->rowCount(parent); ++row)
-+    {
-+        auto idx = model->index(row, 0, parent);
-+        qDebug() << (indent + idx.data().toString());
-+        dump(model, indent + "- ", idx);
-+    }
-+}
-+
-+void tst_QIdentityProxyModel::persistIndexOnLayoutChange()
-+{
-+    DynamicTreeModel model;
-+
-+    QList<int> ancestors;
-+    for (auto i = 0; i < 3; ++i)
-+    {
-+        Q_UNUSED(i);
-+        ModelInsertCommand insertCommand(&model);
-+        insertCommand.setAncestorRowNumbers(ancestors);
-+        insertCommand.setStartRow(0);
-+        insertCommand.setEndRow(0);
-+        insertCommand.doCommand();
-+        ancestors.push_back(0);
-+    }
-+    ModelInsertCommand insertCommand(&model);
-+    insertCommand.setAncestorRowNumbers(ancestors);
-+    insertCommand.setStartRow(0);
-+    insertCommand.setEndRow(1);
-+    insertCommand.doCommand();
-+
-+    // dump(&model);
-+    // " - 1"
-+    // " - - 2"
-+    // " - - - 3"
-+    // " - - - - 4"
-+    // " - - - - 5"
-+
-+    QIdentityProxyModel proxy;
-+    proxy.setSourceModel(&model);
-+
-+    QPersistentModelIndex persistentIndex;
-+
-+    QPersistentModelIndex sourcePersistentIndex = model.match(model.index(0, 0), Qt::DisplayRole, "5", 1, Qt::MatchRecursive).first();
-+
-+    QCOMPARE(sourcePersistentIndex.data().toString(), QStringLiteral("5"));
-+
-+    bool gotLayoutAboutToBeChanged = false;
-+    bool gotLayoutChanged = false;
-+
-+    QObject::connect(&proxy, &QAbstractItemModel::layoutAboutToBeChanged, &proxy, [&proxy, &persistentIndex, &gotLayoutAboutToBeChanged]
-+    {
-+        gotLayoutAboutToBeChanged = true;
-+        persistentIndex = proxy.match(proxy.index(0, 0), Qt::DisplayRole, "5", 1, Qt::MatchRecursive).first();
-+    });
-+
-+    QObject::connect(&proxy, &QAbstractItemModel::layoutChanged, &proxy, [&proxy, &persistentIndex, &sourcePersistentIndex, &gotLayoutChanged]
-+    {
-+        gotLayoutChanged = true;
-+        QCOMPARE(QModelIndex(persistentIndex), proxy.mapFromSource(sourcePersistentIndex));
-+    });
-+
-+    ModelChangeChildrenLayoutsCommand layoutChangeCommand(&model, 0);
-+
-+    layoutChangeCommand.setAncestorRowNumbers(QList<int>{0, 0, 0});
-+    layoutChangeCommand.setSecondAncestorRowNumbers(QList<int>{0, 0});
-+
-+    layoutChangeCommand.doCommand();
-+
-+    QVERIFY(gotLayoutAboutToBeChanged);
-+    QVERIFY(gotLayoutChanged);
-+    QVERIFY(persistentIndex.isValid());
-+}
-+
- QTEST_MAIN(tst_QIdentityProxyModel)
- #include "tst_qidentityproxymodel.moc"
--- 
-2.7.4
-

diff --git a/dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-1.patch b/dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-1.patch
deleted file mode 100644
index 9edbe18617a..00000000000
--- a/dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-1.patch
+++ /dev/null
@@ -1,252 +0,0 @@
-From 3bd0fd8f97e7a33a874929a383a42e6c710bfff3 Mon Sep 17 00:00:00 2001
-From: Stephen Kelly <steveire@gmail.com>
-Date: Sat, 17 Dec 2016 06:20:06 +0000
-Subject: [PATCH] QSFPM: Fix handling of source model layout change
-
-In sourceLayoutAboutToBeChanged the source model update is ignored if
-the affected parents are filtered out anyway.  The same logic is
-attempted in the sourceLayoutChanged slot, but there the early-return
-logic is applied too late - the mapping is cleared before performing the
-early-return.  Because pointers into the mapping are used in the
-internalPointer of QModelIndexes in this class, persistent indexes used
-later will segfault when attempting to dereference it.
-
-Additionally, if a parent becomes invalid as a result of the
-layoutChange, it would be filtered out by the condition in the loop,
-resulting in a different result in the comparison of emptiness of the
-parents container.
-
-Fix that by persisting the parent's container, and performing the test
-for early-return before clearing the mapping.
-
-Task-number: QTBUG-47711
-Task-number: QTBUG-32981
-Change-Id: If45e8a1c97d39454160f52041bc9ae7e337dce97
-Reviewed-by: David Faure <david.faure@kdab.com>
----
- src/corelib/itemmodels/qsortfilterproxymodel.cpp   |  31 ++---
- .../tst_qsortfilterproxymodel.cpp                  | 126 +++++++++++++++++++++
- 2 files changed, 137 insertions(+), 20 deletions(-)
-
-diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp
-index b0ddfa8..3331521 100644
---- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp
-+++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp
-@@ -171,6 +171,7 @@ public:
-     QRowsRemoval itemsBeingRemoved;
- 
-     QModelIndexPairList saved_persistent_indexes;
-+    QList<QPersistentModelIndex> saved_layoutChange_parents;
- 
-     QHash<QModelIndex, Mapping *>::const_iterator create_mapping(
-         const QModelIndex &source_parent) const;
-@@ -1331,23 +1332,23 @@ void QSortFilterProxyModelPrivate::_q_sourceLayoutAboutToBeChanged(const QList<Q
-     Q_UNUSED(hint); // We can't forward Hint because we might filter additional rows or columns
-     saved_persistent_indexes.clear();
- 
--    QList<QPersistentModelIndex> parents;
-+    saved_layoutChange_parents.clear();
-     for (const QPersistentModelIndex &parent : sourceParents) {
-         if (!parent.isValid()) {
--            parents << QPersistentModelIndex();
-+            saved_layoutChange_parents << QPersistentModelIndex();
-             continue;
-         }
-         const QModelIndex mappedParent = q->mapFromSource(parent);
-         // Might be filtered out.
-         if (mappedParent.isValid())
--            parents << mappedParent;
-+            saved_layoutChange_parents << mappedParent;
-     }
- 
-     // All parents filtered out.
--    if (!sourceParents.isEmpty() && parents.isEmpty())
-+    if (!sourceParents.isEmpty() && saved_layoutChange_parents.isEmpty())
-         return;
- 
--    emit q->layoutAboutToBeChanged(parents);
-+    emit q->layoutAboutToBeChanged(saved_layoutChange_parents);
-     if (persistent.indexes.isEmpty())
-         return;
- 
-@@ -1359,6 +1360,9 @@ void QSortFilterProxyModelPrivate::_q_sourceLayoutChanged(const QList<QPersisten
-     Q_Q(QSortFilterProxyModel);
-     Q_UNUSED(hint); // We can't forward Hint because we might filter additional rows or columns
- 
-+    if (!sourceParents.isEmpty() && saved_layoutChange_parents.isEmpty())
-+        return;
-+
-     // Optimize: We only actually have to clear the mapping related to the contents of
-     // sourceParents, not everything.
-     qDeleteAll(source_index_mapping);
-@@ -1373,21 +1377,8 @@ void QSortFilterProxyModelPrivate::_q_sourceLayoutChanged(const QList<QPersisten
-         source_index_mapping.clear();
-     }
- 
--    QList<QPersistentModelIndex> parents;
--    for (const QPersistentModelIndex &parent : sourceParents) {
--        if (!parent.isValid()) {
--            parents << QPersistentModelIndex();
--            continue;
--        }
--        const QModelIndex mappedParent = q->mapFromSource(parent);
--        if (mappedParent.isValid())
--            parents << mappedParent;
--    }
--
--    if (!sourceParents.isEmpty() && parents.isEmpty())
--        return;
--
--    emit q->layoutChanged(parents);
-+    emit q->layoutChanged(saved_layoutChange_parents);
-+    saved_layoutChange_parents.clear();
- }
- 
- void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeInserted(
-diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
-index 38e3c68..6b98d9f 100644
---- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
-+++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
-@@ -145,6 +145,8 @@ private slots:
-     void canDropMimeData();
-     void filterHint();
- 
-+    void sourceLayoutChangeLeavesValidPersistentIndexes();
-+
- protected:
-     void buildHierarchy(const QStringList &data, QAbstractItemModel *model);
-     void checkHierarchy(const QStringList &data, const QAbstractItemModel *model);
-@@ -4181,5 +4183,129 @@ void tst_QSortFilterProxyModel::filterHint()
-              QAbstractItemModel::NoLayoutChangeHint);
- }
- 
-+/**
-+
-+  Creates a model where each item has one child, to a set depth,
-+  and the last item has no children.  For a model created with
-+  setDepth(4):
-+
-+    - 1
-+    - - 2
-+    - - - 3
-+    - - - - 4
-+*/
-+class StepTreeModel : public QAbstractItemModel
-+{
-+    Q_OBJECT
-+public:
-+    StepTreeModel(QObject * parent = 0)
-+        : QAbstractItemModel(parent), m_depth(0) {}
-+
-+    int columnCount(const QModelIndex& = QModelIndex()) const override { return 1; }
-+
-+    int rowCount(const QModelIndex& parent = QModelIndex()) const override
-+    {
-+        quintptr parentId = (parent.isValid()) ? parent.internalId() : 0;
-+        return (parentId < m_depth) ? 1 : 0;
-+    }
-+
-+    QVariant data(const QModelIndex & index, int role = Qt::DisplayRole) const override
-+    {
-+        if (role != Qt::DisplayRole)
-+            return QVariant();
-+
-+        return QString::number(index.internalId());
-+    }
-+
-+    QModelIndex index(int, int, const QModelIndex& parent = QModelIndex()) const override
-+    {
-+        quintptr parentId = (parent.isValid()) ? parent.internalId() : 0;
-+        if (parentId >= m_depth)
-+            return QModelIndex();
-+
-+        return createIndex(0, 0, parentId + 1);
-+    }
-+
-+    QModelIndex parent(const QModelIndex& index) const override
-+    {
-+        if (index.internalId() == 0)
-+            return QModelIndex();
-+
-+        return createIndex(0, 0, index.internalId() - 1);
-+    }
-+
-+    void setDepth(quintptr depth)
-+    {
-+        int parentIdWithLayoutChange = (m_depth < depth) ? m_depth : depth;
-+
-+        QList<QPersistentModelIndex> parentsOfLayoutChange;
-+        parentsOfLayoutChange.push_back(createIndex(0, 0, parentIdWithLayoutChange));
-+
-+        layoutAboutToBeChanged(parentsOfLayoutChange);
-+
-+        auto existing = persistentIndexList();
-+
-+        QList<QModelIndex> updated;
-+
-+        for (auto idx : existing) {
-+            if (indexDepth(idx) <= depth)
-+                updated.push_back(idx);
-+            else
-+                updated.push_back({});
-+        }
-+
-+        m_depth = depth;
-+
-+        changePersistentIndexList(existing, updated);
-+
-+        layoutChanged(parentsOfLayoutChange);
-+    }
-+
-+private:
-+    static quintptr indexDepth(QModelIndex const& index)
-+    {
-+        return (index.isValid()) ? 1 + indexDepth(index.parent()) : 0;
-+    }
-+
-+private:
-+    quintptr m_depth;
-+};
-+
-+void tst_QSortFilterProxyModel::sourceLayoutChangeLeavesValidPersistentIndexes()
-+{
-+    StepTreeModel model;
-+    Q_SET_OBJECT_NAME(model);
-+    model.setDepth(4);
-+
-+    QSortFilterProxyModel proxy1;
-+    proxy1.setSourceModel(&model);
-+    Q_SET_OBJECT_NAME(proxy1);
-+
-+    proxy1.setFilterRegExp("1|2");
-+
-+    // The current state of things:
-+    //  model         proxy
-+    //   - 1           - 1
-+    //   - - 2         - - 2
-+    //   - - - 3
-+    //   - - - - 4
-+
-+    // The setDepth call below removes '4' with a layoutChanged call.
-+    // Because the proxy filters that out anyway, the proxy doesn't need
-+    // to emit any signals or update persistent indexes.
-+
-+    QPersistentModelIndex persistentIndex = proxy1.index(0, 0, proxy1.index(0, 0));
-+
-+    model.setDepth(3);
-+
-+    // Calling parent() causes the internalPointer to be used.
-+    // Before fixing QTBUG-47711, that could be a dangling pointer.
-+    // The use of qDebug here makes sufficient use of the heap to
-+    // cause corruption at runtime with normal use on linux (before
-+    // the fix). valgrind confirms the fix.
-+    qDebug() << persistentIndex.parent();
-+    QVERIFY(persistentIndex.parent().isValid());
-+}
-+
- QTEST_MAIN(tst_QSortFilterProxyModel)
- #include "tst_qsortfilterproxymodel.moc"
--- 
-2.7.4
-
-

diff --git a/dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-2.patch b/dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-2.patch
deleted file mode 100644
index 973649637e6..00000000000
--- a/dev-qt/qtcore/files/qtcore-5.7.1-qsfpm-2.patch
+++ /dev/null
@@ -1,195 +0,0 @@
-From 0874861bcc70313c343aba5e5566ed30b69eed1c Mon Sep 17 00:00:00 2001
-From: Stephen Kelly <steveire@gmail.com>
-Date: Mon, 19 Dec 2016 21:13:57 +0000
-Subject: [PATCH] QSFPM: Remove data manipulation from move handlers
-
-Similar to the fix in the parent commit, incorrect updating of the
-internal data structures during layout changes can lead to dangling
-pointers being dereferenced later.  Moves are treated as layoutChanges
-by this proxy by forwarding to the appropriate method.  However, data is
-incorrectly cleared prior to that forwarding.  Remove that, and let the
-layoutChange handling take appropriate action.
-
-Change-Id: Iee951e37152328a4e6a5fb8e5385c32a2fe4c0bd
-Reviewed-by: David Faure <david.faure@kdab.com>
----
- src/corelib/itemmodels/qsortfilterproxymodel.cpp   | 67 ++++------------------
- .../tst_qsortfilterproxymodel.cpp                  | 46 +++++++++++++++
- 2 files changed, 58 insertions(+), 55 deletions(-)
-
-diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp
-index 3331521..226a240 100644
---- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp
-+++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp
-@@ -1418,49 +1418,27 @@ void QSortFilterProxyModelPrivate::_q_sourceRowsRemoved(
- void QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeMoved(
-     const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */)
- {
--    Q_Q(QSortFilterProxyModel);
-     // Because rows which are contiguous in the source model might not be contiguous
-     // in the proxy due to sorting, the best thing we can do here is be specific about what
-     // parents are having their children changed.
-     // Optimize: Emit move signals if the proxy is not sorted. Will need to account for rows
-     // being filtered out though.
- 
--    saved_persistent_indexes.clear();
--
-     QList<QPersistentModelIndex> parents;
--    parents << q->mapFromSource(sourceParent);
-+    parents << sourceParent;
-     if (sourceParent != destParent)
--      parents << q->mapFromSource(destParent);
--    emit q->layoutAboutToBeChanged(parents);
--    if (persistent.indexes.isEmpty())
--        return;
--    saved_persistent_indexes = store_persistent_indexes();
-+        parents << destParent;
-+    _q_sourceLayoutAboutToBeChanged(parents, QAbstractItemModel::NoLayoutChangeHint);
- }
- 
- void QSortFilterProxyModelPrivate::_q_sourceRowsMoved(
-     const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */)
- {
--    Q_Q(QSortFilterProxyModel);
--
--    // Optimize: We only need to clear and update the persistent indexes which are children of
--    // sourceParent or destParent
--    qDeleteAll(source_index_mapping);
--    source_index_mapping.clear();
--
--    update_persistent_indexes(saved_persistent_indexes);
--    saved_persistent_indexes.clear();
--
--    if (dynamic_sortfilter && update_source_sort_column()) {
--        //update_source_sort_column might have created wrong mapping so we have to clear it again
--        qDeleteAll(source_index_mapping);
--        source_index_mapping.clear();
--    }
--
-     QList<QPersistentModelIndex> parents;
--    parents << q->mapFromSource(sourceParent);
-+    parents << sourceParent;
-     if (sourceParent != destParent)
--      parents << q->mapFromSource(destParent);
--    emit q->layoutChanged(parents);
-+        parents << destParent;
-+    _q_sourceLayoutChanged(parents, QAbstractItemModel::NoLayoutChangeHint);
- }
- 
- void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeInserted(
-@@ -1522,42 +1500,21 @@ void QSortFilterProxyModelPrivate::_q_sourceColumnsRemoved(
- void QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeMoved(
-     const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */)
- {
--    Q_Q(QSortFilterProxyModel);
--
--    saved_persistent_indexes.clear();
--
-     QList<QPersistentModelIndex> parents;
--    parents << q->mapFromSource(sourceParent);
-+    parents << sourceParent;
-     if (sourceParent != destParent)
--      parents << q->mapFromSource(destParent);
--    emit q->layoutAboutToBeChanged(parents);
--
--    if (persistent.indexes.isEmpty())
--        return;
--    saved_persistent_indexes = store_persistent_indexes();
-+        parents << destParent;
-+    _q_sourceLayoutAboutToBeChanged(parents, QAbstractItemModel::NoLayoutChangeHint);
- }
- 
- void QSortFilterProxyModelPrivate::_q_sourceColumnsMoved(
-     const QModelIndex &sourceParent, int /* sourceStart */, int /* sourceEnd */, const QModelIndex &destParent, int /* dest */)
- {
--    Q_Q(QSortFilterProxyModel);
--
--    qDeleteAll(source_index_mapping);
--    source_index_mapping.clear();
--
--    update_persistent_indexes(saved_persistent_indexes);
--    saved_persistent_indexes.clear();
--
--    if (dynamic_sortfilter && update_source_sort_column()) {
--        qDeleteAll(source_index_mapping);
--        source_index_mapping.clear();
--    }
--
-     QList<QPersistentModelIndex> parents;
--    parents << q->mapFromSource(sourceParent);
-+    parents << sourceParent;
-     if (sourceParent != destParent)
--      parents << q->mapFromSource(destParent);
--    emit q->layoutChanged(parents);
-+        parents << destParent;
-+    _q_sourceLayoutChanged(parents, QAbstractItemModel::NoLayoutChangeHint);
- }
- 
- /*!
-diff --git a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
-index 6b98d9f..7b6c470 100644
---- a/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
-+++ b/tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
-@@ -146,6 +146,7 @@ private slots:
-     void filterHint();
- 
-     void sourceLayoutChangeLeavesValidPersistentIndexes();
-+    void rowMoveLeavesValidPersistentIndexes();
- 
- protected:
-     void buildHierarchy(const QStringList &data, QAbstractItemModel *model);
-@@ -4307,5 +4308,50 @@ void tst_QSortFilterProxyModel::sourceLayoutChangeLeavesValidPersistentIndexes()
-     QVERIFY(persistentIndex.parent().isValid());
- }
- 
-+void tst_QSortFilterProxyModel::rowMoveLeavesValidPersistentIndexes()
-+{
-+    DynamicTreeModel model;
-+    Q_SET_OBJECT_NAME(model);
-+
-+    QList<int> ancestors;
-+    for (auto i = 0; i < 5; ++i)
-+    {
-+        Q_UNUSED(i);
-+        ModelInsertCommand insertCommand(&model);
-+        insertCommand.setAncestorRowNumbers(ancestors);
-+        insertCommand.setStartRow(0);
-+        insertCommand.setEndRow(0);
-+        insertCommand.doCommand();
-+        ancestors.push_back(0);
-+    }
-+
-+    QSortFilterProxyModel proxy1;
-+    proxy1.setSourceModel(&model);
-+    Q_SET_OBJECT_NAME(proxy1);
-+
-+    proxy1.setFilterRegExp("1|2");
-+
-+    auto item5 = model.match(model.index(0, 0), Qt::DisplayRole, "5", 1, Qt::MatchRecursive).first();
-+    auto item3 = model.match(model.index(0, 0), Qt::DisplayRole, "3", 1, Qt::MatchRecursive).first();
-+
-+    Q_ASSERT(item5.isValid());
-+    Q_ASSERT(item3.isValid());
-+
-+    QPersistentModelIndex persistentIndex = proxy1.match(proxy1.index(0, 0), Qt::DisplayRole, "2", 1, Qt::MatchRecursive).first();
-+
-+    ModelMoveCommand moveCommand(&model, 0);
-+    moveCommand.setAncestorRowNumbers(QList<int>{0, 0, 0, 0});
-+    moveCommand.setStartRow(0);
-+    moveCommand.setEndRow(0);
-+    moveCommand.setDestRow(0);
-+    moveCommand.setDestAncestors(QList<int>{0, 0, 0});
-+    moveCommand.doCommand();
-+
-+    // Calling parent() causes the internalPointer to be used.
-+    // Before fixing QTBUG-47711 (moveRows case), that could be
-+    // a dangling pointer.
-+    QVERIFY(persistentIndex.parent().isValid());
-+}
-+
- QTEST_MAIN(tst_QSortFilterProxyModel)
- #include "tst_qsortfilterproxymodel.moc"
--- 
-2.7.4
-
-

diff --git a/dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch b/dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch
deleted file mode 100644
index 42ee58b611f..00000000000
--- a/dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 291eba6f8099a0fec8fbd9cf8a1fb67e5c9f4f8d Mon Sep 17 00:00:00 2001
-From: Palo Kisa <palo.kisa@gmail.com>
-Date: Mon, 7 Nov 2016 18:27:17 +0100
-Subject: QClipboard: Fix emitting changed() in XCB
-
-In XCB environment the QClipboard::changed() was not delivered if the
-QClipboard::clear() was issued by other Qt app/process.
-
-If the QClipboard::clear() is used, then the owner in
-xcb_xfixes_selection_notify_event_t is XCB_NONE, so we need make the
-decission to handle this event by the selection_timestamp and our
-m_timestamp[mode].
-
-Task-number: QTBUG-56972
-Change-Id: If4c486ac02223eac506465cac7ff1a07bd02a187
-Reviewed-by: Lars Knoll <lars.knoll@qt.io>
----
- src/plugins/platforms/xcb/qxcbclipboard.cpp | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp
-index d44ebae..40abef4 100644
---- a/src/plugins/platforms/xcb/qxcbclipboard.cpp
-+++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp
-@@ -723,8 +723,10 @@ void QXcbClipboard::handleXFixesSelectionRequest(xcb_xfixes_selection_notify_eve
-     if (mode > QClipboard::Selection)
-         return;
- 
--    // here we care only about the xfixes events that come from non Qt processes
--    if (event->owner != XCB_NONE && event->owner != owner()) {
-+    // Note1: Here we care only about the xfixes events that come from other processes.
-+    // Note2: If the QClipboard::clear() is issued, event->owner is XCB_NONE,
-+    // so we check selection_timestamp to not handle our own QClipboard::clear().
-+    if (event->owner != owner() && event->selection_timestamp > m_timestamp[mode]) {
-         if (!m_xClipboard[mode]) {
-             m_xClipboard[mode].reset(new QXcbClipboardMime(mode, this));
-         } else {
--- 
-cgit v1.0-4-g1e03

diff --git a/dev-qt/qtgui/files/qtgui-5.7.1-x32.patch b/dev-qt/qtgui/files/qtgui-5.7.1-x32.patch
deleted file mode 100644
index 9cfc29d1d08..00000000000
--- a/dev-qt/qtgui/files/qtgui-5.7.1-x32.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 92805a0e9c488e47280e93f65e5378818e340ad1 Mon Sep 17 00:00:00 2001
-From: Laszlo Agocs <laszlo.agocs@qt.io>
-Date: Mon, 7 Nov 2016 11:23:21 +0100
-Subject: Fix EGL break on Debian X32
-
-Change to QT_POINTER_SIZE instead of Q_PROCESSOR_WORDSIZE. The latter
-is 8 due to targeting 64-bit, but pointers are 32-bit still in such
-builds. For the condition in question it is the pointer size that
-matters.
-
-Task-number: QTBUG-56686
-Change-Id: I96c203cae91ceb8404606de605c4fdb1a02a9d5f
-Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
-Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
----
- src/platformsupport/eglconvenience/qt_egl_p.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/platformsupport/eglconvenience/qt_egl_p.h b/src/platformsupport/eglconvenience/qt_egl_p.h
-index 615ee4b80a..b1495c9f9d 100644
---- a/src/platformsupport/eglconvenience/qt_egl_p.h
-+++ b/src/platformsupport/eglconvenience/qt_egl_p.h
-@@ -83,7 +83,7 @@ struct QtEglConverter<uint32_t, uintptr_t>
-     { return v; }
- };
- 
--#if Q_PROCESSOR_WORDSIZE > 4
-+#if QT_POINTER_SIZE > 4
- template <>
- struct QtEglConverter<uintptr_t, uint32_t>
- {
--- 
-cgit v1.1-6-g87c4
-

diff --git a/dev-qt/qtsql/files/qtsql-5.7.1-mariadb.patch b/dev-qt/qtsql/files/qtsql-5.7.1-mariadb.patch
deleted file mode 100644
index 8aede46c3b4..00000000000
--- a/dev-qt/qtsql/files/qtsql-5.7.1-mariadb.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From d25346417238b7dc0fb37359a9b56eff2908a5dc Mon Sep 17 00:00:00 2001
-From: =?utf8?q?Daniel=20Vr=C3=A1til?= <daniel.vratil@kdab.com>
-Date: Mon, 18 Sep 2017 22:33:55 +0200
-Subject: [PATCH] Only call mysql_library_end() once when using MariaDB
-
-MariaDB allows only a single call to mysql_library_end(), all subsequent calls
-to mysql_library_init() or any other API call will fail. Since QMYSQLDriver
-calls mysql_library_end() function whenever the refcount drops to 0, this
-breaks applications that close and reopen database connections.
-
-This change registers call to mysql_library_init() via qAddPostRoutine()
-when compiled against MariaDB, so that we only call it once.
-
-Task-number: QTBUG-63108
-Change-Id: I22c1f0c5b081216f12596a32748dca25cae919e9
-Reviewed-by: Andy Shaw <andy.shaw@qt.io>
----
- src/plugins/sqldrivers/mysql/qsql_mysql.cpp | 18 ++++++++++++------
- 1 file changed, 12 insertions(+), 6 deletions(-)
-
-diff --git a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp
-index ee439fa..6e428fb 100644
---- a/src/sql/drivers/mysql/qsql_mysql.cpp
-+++ b/src/sql/drivers/mysql/qsql_mysql.cpp
-@@ -1158,16 +1158,22 @@ static void qLibraryInit()
-     }
- # endif // MYSQL_VERSION_ID
- #endif // Q_NO_MYSQL_EMBEDDED
-+
-+#ifdef MARIADB_BASE_VERSION
-+    qAddPostRoutine(mysql_server_end);
-+#endif
- }
- 
- static void qLibraryEnd()
- {
--#ifndef Q_NO_MYSQL_EMBEDDED
--# if MYSQL_VERSION_ID > 40000
--#  if (MYSQL_VERSION_ID >= 40110 && MYSQL_VERSION_ID < 50000) || MYSQL_VERSION_ID >= 50003
--    mysql_library_end();
--#  else
--    mysql_server_end();
-+#if !defined(MARIADB_BASE_VERSION)
-+# if !defined(Q_NO_MYSQL_EMBEDDED)
-+#  if MYSQL_VERSION_ID > 40000
-+#   if (MYSQL_VERSION_ID >= 40110 && MYSQL_VERSION_ID < 50000) || MYSQL_VERSION_ID >= 50003
-+     mysql_library_end();
-+#   else
-+     mysql_server_end();
-+#   endif
- #  endif
- # endif
- #endif
--- 
-2.7.4
-

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-fix-system-ffmpeg.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-fix-system-ffmpeg.patch
deleted file mode 100644
index 71881e0f77c..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-fix-system-ffmpeg.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h
---- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h	2016-11-23 13:01:20.929772871 -0800
-+++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h	2016-11-23 13:02:18.879462854 -0800
-@@ -24,7 +24,9 @@
- // Disable deprecated features which result in spammy compile warnings.  This
- // list of defines must mirror those in the 'defines' section of BUILD.gn file &
- // ffmpeg.gyp file or the headers below will generate different structures!
-+#if !defined(USE_SYSTEM_FFMPEG)
- #define FF_API_CONVERGENCE_DURATION 0
-+#endif
- // Upstream libavcodec/utils.c still uses the deprecated
- // av_dup_packet(), causing deprecation warnings.
- // The normal fix for such things is to disable the feature as below,

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-icu58.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-icu58.patch
deleted file mode 100644
index ced5367c482..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-icu58.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
---- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp	2016-11-15 17:07:38.680665385 -0800
-+++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp	2016-11-15 17:12:17.564001354 -0800
-@@ -26,6 +26,9 @@
- #include "wtf/StdLibExtras.h"
- #include "wtf/text/CharacterNames.h"
- 
-+#include <unicode/uchar.h>
-+#include <unicode/uvernum.h>
-+
- namespace blink {
- 
- unsigned numGraphemeClusters(const String& string)
-@@ -122,13 +125,18 @@
-     { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), 0, B(0, 0, 0, 0, 0, 0, 0, 0), 0, 0, 0, B(0, 0, 0, 0, 0, 0, 0, 0), 0, 0, 0, B(0, 0, 0, 0, 0, 0, 0, 0) }, // DEL
- };
- 
-+#if U_ICU_VERSION_MAJOR_NUM >= 58
-+#define BA_LB_COUNT (U_LB_COUNT - 3)
-+#else
-+#define BA_LB_COUNT U_LB_COUNT
-+#endif
- // Line breaking table for CSS word-break: break-all. This table differs from
- // asciiLineBreakTable in:
- // - Indices are Line Breaking Classes defined in UAX#14 Unicode Line Breaking
- //   Algorithm: http://unicode.org/reports/tr14/#DescriptionOfProperties
- // - 1 indicates additional break opportunities. 0 indicates to fallback to
- //   normal line break, not "prohibit break."
--static const unsigned char breakAllLineBreakClassTable[][U_LB_COUNT / 8 + 1] = {
-+static const unsigned char breakAllLineBreakClassTable[][BA_LB_COUNT / 8 + 1] = {
-     // XX AI AL B2 BA BB BK CB    CL CM CR EX GL HY ID IN    IS LF NS NU OP PO PR QU    SA SG SP SY ZW NL WJ H2    H3 JL JT JV CP CJ HL RI
-     { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0) }, // XX
-     { B(0, 1, 1, 0, 1, 0, 0, 0), B(0, 0, 0, 0, 0, 1, 0, 0), B(0, 0, 0, 1, 1, 0, 1, 0), B(1, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 1, 0) }, // AI
-@@ -178,7 +186,7 @@
- #undef AL
- 
- static_assert(WTF_ARRAY_LENGTH(asciiLineBreakTable) == asciiLineBreakTableLastChar - asciiLineBreakTableFirstChar + 1, "asciiLineBreakTable should be consistent");
--static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == U_LB_COUNT, "breakAllLineBreakClassTable should be consistent");
-+static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == BA_LB_COUNT, "breakAllLineBreakClassTable should be consistent");
- 
- static inline bool shouldBreakAfter(UChar lastCh, UChar ch, UChar nextCh)
- {
-@@ -209,7 +217,7 @@
- 
- static inline bool shouldBreakAfterBreakAll(ULineBreak lastLineBreak, ULineBreak lineBreak)
- {
--    if (lineBreak >= 0 && lineBreak < U_LB_COUNT && lastLineBreak >= 0 && lastLineBreak < U_LB_COUNT) {
-+    if (lineBreak >= 0 && lineBreak < BA_LB_COUNT && lastLineBreak >= 0 && lastLineBreak < BA_LB_COUNT) {
-         const unsigned char* tableRow = breakAllLineBreakClassTable[lastLineBreak];
-         return tableRow[lineBreak / 8] & (1 << (lineBreak % 8));
-     }

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-undef-madv_free.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-undef-madv_free.patch
deleted file mode 100644
index 193e7136206..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-undef-madv_free.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From fa8cdb3a32c377b6290d0a92d2522186bcd48293 Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
-Date: Tue, 9 Aug 2016 16:21:29 +0200
-Subject: Do not depend on Linux 4.5
-
-Avoid using MADV_FREE that was only recently added to Linux. It will fail when
-run on older Linux kernels.
-
-Change-Id: I9b0369fb31402f088b2327c12f70dd39f5e4c8c0
-Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
----
- chromium/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp
-index 12c9a7b..1639013 100644
---- a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp
-+++ b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp
-@@ -39,6 +39,11 @@
-
- #include <sys/mman.h>
- 
-+#if OS(LINUX) && defined(MADV_FREE)
-+// Added in Linux 4.5, but we don't want to depend on 4.5 at runtime
-+#undef MADV_FREE
-+#endif
-+
- #ifndef MADV_FREE
- #define MADV_FREE MADV_DONTNEED
- #endif
--- 
-cgit v1.0-4-g1e03
-

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.1-fix-audio-detection.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.1-fix-audio-detection.patch
deleted file mode 100644
index 597554e685c..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.7.1-fix-audio-detection.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-# dev-qt/qtwebengine: Fix detecting audio backends.
-
-# The upstream change doesn't really work for us, so we'll make
-# it work with us.
-# Gentoo-Bug: https://bugs.gentoo.org/603498
-
---- /src/core/config/linux.pri	2016-12-23 00:05:41.057955774 +0200
-+++ /src/core/config/linux.pri	2016-12-23 00:09:39.000573909 +0200
-@@ -35,12 +35,12 @@
- contains(QT_CONFIG, system-png): GYP_CONFIG += use_system_libpng=1
- contains(QT_CONFIG, system-jpeg): GYP_CONFIG += use_system_libjpeg=1
- contains(QT_CONFIG, system-harfbuzz): GYP_CONFIG += use_system_harfbuzz=1
--contains(QT_CONFIG, pulseaudio) {
-+use?(pulseaudio) {
-     GYP_CONFIG += use_pulseaudio=1
- } else {
-     GYP_CONFIG += use_pulseaudio=0
- }
--contains(QT_CONFIG, alsa) {
-+use?(alsa) {
-     GYP_CONFIG += use_alsa=1
- } else {
-     GYP_CONFIG += use_alsa=0

diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.1-gcc-7.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.1-gcc-7.patch
deleted file mode 100644
index a5c3072a477..00000000000
--- a/dev-qt/qtwebengine/files/qtwebengine-5.7.1-gcc-7.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From 64fdd317d4127142ad9e967197a2df6ac81ef55f Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen@qt.io>
-Date: Wed, 29 Mar 2017 17:42:18 +0200
-Subject: [PATCH] Fix build with GCC 7.0
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-Fixes some ambiguities and outright wrong code GCC 7 doesn't accept but
-earlier compilers did.
-
-Task-number:QTBUG-59776
-Change-Id: I012f121842ac6cde49db0d571efc62aabe2115e3
-Reviewed-by: Michael Brüning <michael.bruning@qt.io>
----
- .../mojo/public/cpp/bindings/interface_ptr_info.h     |  2 +-
- .../third_party/WebKit/Source/wtf/LinkedHashSet.h     |  2 ++
- chromium/v8/src/objects-body-descriptors.h            |  2 +-
- chromium/v8/src/objects-inl.h                         | 19 +++++++++++++++++++
- chromium/v8/src/objects.h                             | 16 ++--------------
- 5 files changed, 25 insertions(+), 16 deletions(-)
-
-diff --git a/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h b/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
-index 5bd29d5..c94a5ac 100644
---- a/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
-+++ b/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
-@@ -34,7 +34,7 @@ class InterfacePtrInfo {
- 
-   InterfacePtrInfo& operator=(InterfacePtrInfo&& other) {
-     if (this != &other) {
--      handle_ = other.handle_.Pass();
-+      handle_ = std::move(other.handle_);
-       version_ = other.version_;
-       other.version_ = 0u;
-     }
--- 
-2.7.4
-From 493441248c82d9f39d0947e3bbf4571736e1cf85 Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen@qt.io>
-Date: Wed, 29 Mar 2017 15:53:00 +0200
-Subject: [PATCH 1/1] Fix build with GCC 7.0
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-Fixes a few problems with using undeclared functions and ambigious
-code.
-
-Task-number: QTBUG-59776
-Change-Id: I59813919b4867d5dd3499a45baed004a1a1c1a3c
-Reviewed-by: Michael Brüning <michael.bruning@qt.io>
----
- chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h |  2 ++
- .../third_party/pdfium/fpdfsdk/javascript/global.cpp   |  8 ++++----
- chromium/v8/src/objects-body-descriptors.h             |  2 +-
- chromium/v8/src/objects-inl.h                          | 18 ++++++++++++++++++
- chromium/v8/src/objects.h                              | 16 ++--------------
- 5 files changed, 27 insertions(+), 19 deletions(-)
-
-diff --git a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
-index e85c72f..6f94cd6 100644
---- a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
-+++ b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
-@@ -542,6 +542,8 @@ inline LinkedHashSet<T, U, V, W>& LinkedHashSet<T, U, V, W>::operator=(LinkedHas
-     return *this;
- }
- 
-+inline void swapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b);
-+
- template<typename T, typename U, typename V, typename W>
- inline void LinkedHashSet<T, U, V, W>::swap(LinkedHashSet& other)
- {
-diff --git a/src/3rdparty/chromium/v8/src/objects-body-descriptors.h b/src/3rdparty/chromium/v8/src/objects-body-descriptors.h
-index 91cb888..a1c3634 100644
---- a/src/3rdparty/chromium/v8/src/objects-body-descriptors.h
-+++ b/src/3rdparty/chromium/v8/src/objects-body-descriptors.h
-@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
- 
-   template <typename StaticVisitor>
-   static inline void IterateBody(HeapObject* obj, int object_size) {
--    IterateBody(obj);
-+    IterateBody<StaticVisitor>(obj);
-   }
- };
- 
-diff --git a/src/3rdparty/chromium/v8/src/objects-inl.h b/src/3rdparty/chromium/v8/src/objects-inl.h
-index 58441d3..4c486ea 100644
---- a/src/3rdparty/chromium/v8/src/objects-inl.h
-+++ b/src/3rdparty/chromium/v8/src/objects-inl.h
-@@ -7588,6 +7588,24 @@ bool GlobalDictionaryShape::IsDeleted(Dictionary* dict, int entry) {
- }
- 
- 
-+template <typename Derived, typename Shape, typename Key>
-+inline uint32_t HashTable<Derived,Shape,Key>::Hash(Key key) {
-+  if (Shape::UsesSeed) {
-+    return Shape::SeededHash(key, GetHeap()->HashSeed());
-+  } else {
-+    return Shape::Hash(key);
-+  }
-+}
-+
-+template <typename Derived, typename Shape, typename Key>
-+inline uint32_t HashTable<Derived,Shape,Key>::HashForObject(Key key, Object* object) {
-+  if (Shape::UsesSeed) {
-+    return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-+  } else {
-+    return Shape::HashForObject(key, object);
-+  }
-+}
-+
- bool ObjectHashTableShape::IsMatch(Handle<Object> key, Object* other) {
-   return key->SameValue(other);
- }
-diff --git a/src/3rdparty/chromium/v8/src/objects.h b/src/3rdparty/chromium/v8/src/objects.h
-index 7d774be..42da5fa 100644
---- a/src/3rdparty/chromium/v8/src/objects.h
-+++ b/src/3rdparty/chromium/v8/src/objects.h
-@@ -3194,21 +3194,9 @@ class HashTable : public HashTableBase {
-   typedef Shape ShapeT;
- 
-   // Wrapper methods
--  inline uint32_t Hash(Key key) {
--    if (Shape::UsesSeed) {
--      return Shape::SeededHash(key, GetHeap()->HashSeed());
--    } else {
--      return Shape::Hash(key);
--    }
--  }
-+  inline uint32_t Hash(Key key);
- 
--  inline uint32_t HashForObject(Key key, Object* object) {
--    if (Shape::UsesSeed) {
--      return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
--    } else {
--      return Shape::HashForObject(key, object);
--    }
--  }
-+  inline uint32_t HashForObject(Key key, Object* object);
- 
-   // Returns a new HashTable object.
-   MUST_USE_RESULT static Handle<Derived> New(
--- 
-2.7.4


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2018-05-10 16:40 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-10 16:40 [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwebengine/files/, dev-qt/qtcore/files/, dev-qt/qtsql/files/, Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox