From b69d078b6b4604a31384691be8f8122d3131b95a Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Tue, 2 Mar 2021 21:24:57 +0000 Subject: Tue Mar 2 21:24:57 UTC 2021 kde/bluedevil-5.21.2-x86_64-1.txz: Upgraded. kde/breeze-5.21.2-x86_64-1.txz: Upgraded. kde/breeze-grub-5.21.2-x86_64-1.txz: Upgraded. kde/breeze-gtk-5.21.2-x86_64-1.txz: Upgraded. kde/calligra-3.2.1-x86_64-6.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/cantor-20.12.2-x86_64-3.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/drkonqi-5.21.2-x86_64-1.txz: Upgraded. kde/kactivitymanagerd-5.21.2-x86_64-1.txz: Upgraded. kde/kcoreaddons-5.79.0-x86_64-2.txz: Rebuilt. Use inotify, not gamin. This should improve performance and fix a few random deadlocks. Thanks to Heinz Wiesinger. kde/kde-cli-tools-5.21.2-x86_64-1.txz: Upgraded. kde/kde-gtk-config-5.21.2-x86_64-1.txz: Upgraded. kde/kdecoration-5.21.2-x86_64-1.txz: Upgraded. kde/kdeplasma-addons-5.21.2-x86_64-1.txz: Upgraded. kde/kfilemetadata-5.79.0-x86_64-2.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/kgamma5-5.21.2-x86_64-1.txz: Upgraded. kde/khotkeys-5.21.2-x86_64-1.txz: Upgraded. kde/kile-2.9.93-x86_64-6.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/kinfocenter-5.21.2-x86_64-1.txz: Upgraded. kde/kitinerary-20.12.2-x86_64-3.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/kmenuedit-5.21.2-x86_64-1.txz: Upgraded. kde/krita-4.4.2-x86_64-4.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/kscreen-5.21.2-x86_64-1.txz: Upgraded. kde/kscreenlocker-5.21.2-x86_64-1.txz: Upgraded. kde/ksshaskpass-5.21.2-x86_64-1.txz: Upgraded. kde/kstars-3.5.2-x86_64-1.txz: Upgraded. kde/ksysguard-5.21.2-x86_64-1.txz: Upgraded. kde/ktexteditor-5.79.0-x86_64-2.txz: Rebuilt. Applied upstream patch to fix syntax highlighting in kdevelop. Thanks to Heinz Wiesinger. kde/kwallet-pam-5.21.2-x86_64-1.txz: Upgraded. kde/kwayland-integration-5.21.2-x86_64-1.txz: Upgraded. kde/kwayland-server-5.21.2-x86_64-1.txz: Upgraded. kde/kwin-5.21.2-x86_64-1.txz: Upgraded. kde/kwrited-5.21.2-x86_64-1.txz: Upgraded. kde/libkscreen-5.21.2-x86_64-1.txz: Upgraded. kde/libksysguard-5.21.2-x86_64-1.txz: Upgraded. kde/milou-5.21.2-x86_64-1.txz: Upgraded. kde/okular-20.12.2-x86_64-3.txz: Rebuilt. Recompiled against poppler-21.03.0. kde/oxygen-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-browser-integration-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-desktop-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-disks-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-firewall-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-integration-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-nm-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-pa-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-sdk-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-systemmonitor-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-vault-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-workspace-5.21.2-x86_64-1.txz: Upgraded. kde/plasma-workspace-wallpapers-5.21.2-x86_64-1.txz: Upgraded. kde/polkit-kde-agent-1-5.21.2-x86_64-1.txz: Upgraded. kde/powerdevil-5.21.2-x86_64-1.txz: Upgraded. kde/qqc2-breeze-style-5.21.2-x86_64-1.txz: Upgraded. kde/sddm-kcm-5.21.2-x86_64-1.txz: Upgraded. kde/systemsettings-5.21.2-x86_64-1.txz: Upgraded. kde/xdg-desktop-portal-kde-5.21.2-x86_64-1.txz: Upgraded. l/libxkbcommon-1.1.0-x86_64-1.txz: Upgraded. l/poppler-21.03.0-x86_64-1.txz: Upgraded. Shared library .so-version bump. --- source/kde/kde/build/calligra | 2 +- source/kde/kde/build/cantor | 2 +- source/kde/kde/build/kcoreaddons | 2 +- source/kde/kde/build/kfilemetadata | 2 +- source/kde/kde/build/kile | 2 +- source/kde/kde/build/kitinerary | 2 +- source/kde/kde/build/krita | 2 +- source/kde/kde/build/kstars | 2 +- source/kde/kde/build/ktexteditor | 2 +- source/kde/kde/build/okular | 2 +- source/kde/kde/cmake/kcoreaddons | 24 +++++ source/kde/kde/patch/ktexteditor.patch | 2 + .../686da7797105a93035cfbc7edbf2a8e8f8adf0ec.patch | 101 +++++++++++++++++++++ 13 files changed, 137 insertions(+), 10 deletions(-) create mode 100644 source/kde/kde/cmake/kcoreaddons create mode 100644 source/kde/kde/patch/ktexteditor.patch create mode 100644 source/kde/kde/patch/ktexteditor/686da7797105a93035cfbc7edbf2a8e8f8adf0ec.patch (limited to 'source/kde/kde') diff --git a/source/kde/kde/build/calligra b/source/kde/kde/build/calligra index 7ed6ff82d..1e8b31496 100644 --- a/source/kde/kde/build/calligra +++ b/source/kde/kde/build/calligra @@ -1 +1 @@ -5 +6 diff --git a/source/kde/kde/build/cantor b/source/kde/kde/build/cantor index 0cfbf0888..00750edc0 100644 --- a/source/kde/kde/build/cantor +++ b/source/kde/kde/build/cantor @@ -1 +1 @@ -2 +3 diff --git a/source/kde/kde/build/kcoreaddons b/source/kde/kde/build/kcoreaddons index d00491fd7..0cfbf0888 100644 --- a/source/kde/kde/build/kcoreaddons +++ b/source/kde/kde/build/kcoreaddons @@ -1 +1 @@ -1 +2 diff --git a/source/kde/kde/build/kfilemetadata b/source/kde/kde/build/kfilemetadata index d00491fd7..0cfbf0888 100644 --- a/source/kde/kde/build/kfilemetadata +++ b/source/kde/kde/build/kfilemetadata @@ -1 +1 @@ -1 +2 diff --git a/source/kde/kde/build/kile b/source/kde/kde/build/kile index 7ed6ff82d..1e8b31496 100644 --- a/source/kde/kde/build/kile +++ b/source/kde/kde/build/kile @@ -1 +1 @@ -5 +6 diff --git a/source/kde/kde/build/kitinerary b/source/kde/kde/build/kitinerary index 0cfbf0888..00750edc0 100644 --- a/source/kde/kde/build/kitinerary +++ b/source/kde/kde/build/kitinerary @@ -1 +1 @@ -2 +3 diff --git a/source/kde/kde/build/krita b/source/kde/kde/build/krita index 00750edc0..b8626c4cf 100644 --- a/source/kde/kde/build/krita +++ b/source/kde/kde/build/krita @@ -1 +1 @@ -3 +4 diff --git a/source/kde/kde/build/kstars b/source/kde/kde/build/kstars index 00750edc0..d00491fd7 100644 --- a/source/kde/kde/build/kstars +++ b/source/kde/kde/build/kstars @@ -1 +1 @@ -3 +1 diff --git a/source/kde/kde/build/ktexteditor b/source/kde/kde/build/ktexteditor index d00491fd7..0cfbf0888 100644 --- a/source/kde/kde/build/ktexteditor +++ b/source/kde/kde/build/ktexteditor @@ -1 +1 @@ -1 +2 diff --git a/source/kde/kde/build/okular b/source/kde/kde/build/okular index 0cfbf0888..00750edc0 100644 --- a/source/kde/kde/build/okular +++ b/source/kde/kde/build/okular @@ -1 +1 @@ -2 +3 diff --git a/source/kde/kde/cmake/kcoreaddons b/source/kde/kde/cmake/kcoreaddons new file mode 100644 index 000000000..b1cc8566c --- /dev/null +++ b/source/kde/kde/cmake/kcoreaddons @@ -0,0 +1,24 @@ +mkdir cmake-build +cd cmake-build + cmake \ + $KDE_OPT_ARGS \ + -DKDE_PLATFORM_FEATURE_DISABLE_DEPRECATED=TRUE \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DMAN_INSTALL_DIR=/usr/man \ + -DSYSCONF_INSTALL_DIR=/etc/kde \ + -DLIB_SUFFIX=${LIBDIRSUFFIX} \ + -DLIB_INSTALL_DIR=lib$LIBDIRSUFFIX \ + -DLIBEXEC_INSTALL_DIR=lib$LIBDIRSUFFIX \ + -DQT_PLUGIN_INSTALL_DIR=lib$LIBDIRSUFFIX/qt5/plugins \ + -DQML_INSTALL_DIR=lib$LIBDIRSUFFIX/qt5/qml \ + -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ + -DBUILD_TESTING=OFF \ + -DCMAKE_DISABLE_FIND_PACKAGE_FAM=ON \ + -DQca-qt5_DIR=/usr/lib${LIBDIRSUFFIX}/cmake/Qca \ + .. + diff --git a/source/kde/kde/patch/ktexteditor.patch b/source/kde/kde/patch/ktexteditor.patch new file mode 100644 index 000000000..39331d706 --- /dev/null +++ b/source/kde/kde/patch/ktexteditor.patch @@ -0,0 +1,2 @@ +# Fix syntax highlighting in kdevelop: +cat $CWD/patch/ktexteditor/686da7797105a93035cfbc7edbf2a8e8f8adf0ec.patch | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; } diff --git a/source/kde/kde/patch/ktexteditor/686da7797105a93035cfbc7edbf2a8e8f8adf0ec.patch b/source/kde/kde/patch/ktexteditor/686da7797105a93035cfbc7edbf2a8e8f8adf0ec.patch new file mode 100644 index 000000000..7fca1a9e5 --- /dev/null +++ b/source/kde/kde/patch/ktexteditor/686da7797105a93035cfbc7edbf2a8e8f8adf0ec.patch @@ -0,0 +1,101 @@ +From 686da7797105a93035cfbc7edbf2a8e8f8adf0ec Mon Sep 17 00:00:00 2001 +From: Christoph Cullmann +Date: Wed, 17 Feb 2021 20:51:12 +0100 +Subject: [PATCH] ensure rangesForLine caching is correcly updated + +during fixing a segfault, as invalid range pointer were kept +in the rangesForLine cache, too many ranges were purged + +properly update the cache before potential invalidation + +add unit test to avoid regressions in the future +--- + autotests/src/movingrange_test.cpp | 33 ++++++++++++++++++++++++++++++ + autotests/src/movingrange_test.h | 1 + + src/buffer/katetextblock.cpp | 10 +++++++++ + 3 files changed, 44 insertions(+) + +diff --git a/autotests/src/movingrange_test.cpp b/autotests/src/movingrange_test.cpp +index 66393ae7..81a85b1a 100644 +--- a/autotests/src/movingrange_test.cpp ++++ b/autotests/src/movingrange_test.cpp +@@ -459,3 +459,36 @@ void MovingRangeTest::testLineRemoved() + auto r = doc.buffer().rangesForLine(1, view, true); + QVERIFY(r.isEmpty()); + } ++ ++void MovingRangeTest::testLineWrapOrUnwrapUpdateRangeForLineCache() ++{ ++ KTextEditor::DocumentPrivate doc; ++ doc.setText( ++ QStringLiteral("abcd\n" ++ "efgh\n" ++ "hijk\n")); ++ ++ // add range to line 2, it shall be in rangeForLine for the right lines after each update! ++ // must be single line range to be in the cache! ++ auto range = static_cast(doc.newMovingRange({2, 1, 2, 3}, ++ KTextEditor::MovingRange::ExpandLeft | KTextEditor::MovingRange::ExpandRight, ++ KTextEditor::MovingRange::InvalidateIfEmpty)); ++ ++ // range shall be in the lookup cache for line 2 ++ QVERIFY(doc.buffer().rangesForLine(0, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(1, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(2, nullptr, false).contains(range)); ++ ++ // wrap line 1 => range should move to line 3 ++ doc.editWrapLine(1, 1); ++ QVERIFY(doc.buffer().rangesForLine(0, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(1, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(2, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(3, nullptr, false).contains(range)); ++ ++ // unwrap line 1 => range should back move to line 2 ++ doc.editUnWrapLine(1); ++ QVERIFY(doc.buffer().rangesForLine(0, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(1, nullptr, false).isEmpty()); ++ QVERIFY(doc.buffer().rangesForLine(2, nullptr, false).contains(range)); ++} +diff --git a/autotests/src/movingrange_test.h b/autotests/src/movingrange_test.h +index 6f8c057d..016655f7 100644 +--- a/autotests/src/movingrange_test.h ++++ b/autotests/src/movingrange_test.h +@@ -24,6 +24,7 @@ private Q_SLOTS: + void testFeedbackCaret(); + void testFeedbackMouse(); + void testLineRemoved(); ++ void testLineWrapOrUnwrapUpdateRangeForLineCache(); + }; + + #endif // KATE_MOVINGRANGE_TEST_H +diff --git a/src/buffer/katetextblock.cpp b/src/buffer/katetextblock.cpp +index 43d137e4..246897b4 100644 +--- a/src/buffer/katetextblock.cpp ++++ b/src/buffer/katetextblock.cpp +@@ -167,6 +167,11 @@ void TextBlock::wrapLine(const KTextEditor::Cursor &position, int fixStartLinesS + // we might need to invalidate ranges or notify about their changes + // checkValidity might trigger delete of the range! + for (TextRange *range : qAsConst(changedRanges)) { ++ // we need to do updateRange to ALWAYS ensure the line => range and back cache is updated ++ // see MovingRangeTest::testLineWrapOrUnwrapUpdateRangeForLineCache ++ updateRange(range); ++ ++ // in addition: ensure that we really invalidate bad ranges! + range->checkValidity(range->toLineRange()); + } + } +@@ -333,6 +338,11 @@ void TextBlock::unwrapLine(int line, TextBlock *previousBlock, int fixStartLines + // we might need to invalidate ranges or notify about their changes + // checkValidity might trigger delete of the range! + for (TextRange *range : qAsConst(changedRanges)) { ++ // we need to do updateRange to ALWAYS ensure the line => range and back cache is updated ++ // see MovingRangeTest::testLineWrapOrUnwrapUpdateRangeForLineCache ++ updateRange(range); ++ ++ // in addition: ensure that we really invalidate bad ranges! + range->checkValidity(range->toLineRange()); + } + } +-- +GitLab + -- cgit v1.2.3