diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2020-02-15 02:42:28 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2020-02-15 08:59:47 +0100 |
commit | 7cde3ca9e7c5de666cc607e737f984a52f94e021 (patch) | |
tree | 9625b6c02d0dad1e8cc40f9713b2c1d4919d011a /source/l/qt5/patches/qt5.qtbug-49452.patch | |
parent | bea4af160dc640549e07144b9a0dddf09b569861 (diff) | |
download | current-7cde3ca9e7c5de666cc607e737f984a52f94e021.tar.gz |
Sat Feb 15 02:42:28 UTC 202020200215024228
a/kernel-generic-5.4.20-x86_64-1.txz: Upgraded.
a/kernel-huge-5.4.20-x86_64-1.txz: Upgraded.
a/kernel-modules-5.4.20-x86_64-1.txz: Upgraded.
a/shadow-4.8.1-x86_64-3.txz: Rebuilt.
a/util-linux-2.35.1-x86_64-3.txz: Rebuilt.
d/kernel-headers-5.4.20-x86-1.txz: Upgraded.
k/kernel-source-5.4.20-noarch-1.txz: Upgraded.
l/ConsoleKit2-1.2.1-x86_64-2.txz: Rebuilt.
l/dconf-editor-3.34.4-x86_64-1.txz: Upgraded.
l/libxkbcommon-0.10.0-x86_64-1.txz: Added.
l/openal-soft-1.19.1-x86_64-1.txz: Added.
l/qt5-5.13.2-x86_64-1.txz: Added.
Thanks to alienBOB.
n/openssh-8.2p1-x86_64-1.txz: Upgraded.
Potentially incompatible changes:
* ssh(1), sshd(8): the removal of "ssh-rsa" from the accepted
CASignatureAlgorithms list.
* ssh(1), sshd(8): this release removes diffie-hellman-group14-sha1
from the default key exchange proposal for both the client and
server.
* ssh-keygen(1): the command-line options related to the generation
and screening of safe prime numbers used by the
diffie-hellman-group-exchange-* key exchange algorithms have
changed. Most options have been folded under the -O flag.
* sshd(8): the sshd listener process title visible to ps(1) has
changed to include information about the number of connections that
are currently attempting authentication and the limits configured
by MaxStartups.
x/mesa-19.3.4-x86_64-2.txz: Rebuilt.
Reverted "[PATCH] swr: Fix GCC 4.9 checks." which makes X fail to start with
an illegal instruction on some hardware.
isolinux/initrd.img: Rebuilt.
kernels/*: Upgraded.
testing/packages/PAM/ConsoleKit2-1.2.1-x86_64-2_pam.txz: Rebuilt.
Rebuilt with --disable-libcgmanager to fix setting limits on PAM.
Thanks to gattocarlo.
testing/packages/PAM/openssh-8.2p1-x86_64-1_pam.txz: Upgraded.
testing/packages/PAM/shadow-4.8.1-x86_64-3_pam.txz: Rebuilt.
Moved some of the /etc/pam.d/ file to the util-linux package where they
more properly belong.
testing/packages/PAM/util-linux-2.35.1-x86_64-3_pam.txz: Rebuilt.
Added some /etc/pam.d/ files previously in the shadow package.
Changed /etc/pam.d/{chfn,chsh} and made chfn/chsh setuid root to fix them.
Added /etc/pam.d/{runuser,runuser-l}.
usb-and-pxe-installers/usbboot.img: Rebuilt.
Diffstat (limited to 'source/l/qt5/patches/qt5.qtbug-49452.patch')
-rw-r--r-- | source/l/qt5/patches/qt5.qtbug-49452.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/source/l/qt5/patches/qt5.qtbug-49452.patch b/source/l/qt5/patches/qt5.qtbug-49452.patch new file mode 100644 index 00000000..4549ff16 --- /dev/null +++ b/source/l/qt5/patches/qt5.qtbug-49452.patch @@ -0,0 +1,58 @@ +From 6f423555eba55ccdf7287071e10576bc1b687fd2 Mon Sep 17 00:00:00 2001 +From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> +Date: Mon, 1 Aug 2016 13:39:53 +0200 +Subject: [PATCH] REG: Fix unwanted cache flush in Freetype engine + +The Freetype cache was almost completely disabled by +134c6db8587a8ce156d4fa31ffa62605821851b2 because after that +change, the lockedAlphaMapForGlyph() function would no longer +cut off early for empty glyphs like spaces, but rather go +through all alpha map functions before it realized that there +was nothing to render. This would in turn invalidate the cache +for every empty glyph, causing all glyphs to be rerendered for +every isolated word. + +This change adds back a cut off. This is only needed in the +lockedAlphaMapForGlyph() function, since the superclass implementation +of the other alpha map functions already contains a cut off for +width/height == 0. + +[ChangeLog][Qt Gui][Text] Fixed a performance regression in Freetype +engine that was introduced in Qt 5.5. + +Change-Id: I381285939909e99cc5fb5f3497fecf9fa871f29a +Task-number: QTBUG-49452 +Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> +--- + src/gui/text/qfontengine_ft.cpp | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/gui/text/qfontengine_ft.cpp b/src/gui/text/qfontengine_ft.cpp +index 4de41df..7c878da 100644 +--- a/src/gui/text/qfontengine_ft.cpp ++++ b/src/gui/text/qfontengine_ft.cpp +@@ -1716,7 +1716,7 @@ glyph_metrics_t QFontEngineFT::alphaMapBoundingBox(glyph_t glyph, QFixed subPixe + + static inline QImage alphaMapFromGlyphData(QFontEngineFT::Glyph *glyph, QFontEngine::GlyphFormat glyphFormat) + { +- if (glyph == Q_NULLPTR) ++ if (glyph == Q_NULLPTR || glyph->height == 0 || glyph->width == 0) + return QImage(); + + QImage::Format format = QImage::Format_Invalid; +@@ -1764,11 +1764,15 @@ QImage *QFontEngineFT::lockedAlphaMapForGlyph(glyph_t glyphIndex, QFixed subPixe + + currentlyLockedAlphaMap = alphaMapFromGlyphData(glyph, neededFormat); + ++ const bool glyphHasGeometry = glyph != Q_NULLPTR && glyph->height != 0 && glyph->width != 0; + if (!cacheEnabled && glyph != &emptyGlyph) { + currentlyLockedAlphaMap = currentlyLockedAlphaMap.copy(); + delete glyph; + } + ++ if (!glyphHasGeometry) ++ return Q_NULLPTR; ++ + if (currentlyLockedAlphaMap.isNull()) + return QFontEngine::lockedAlphaMapForGlyph(glyphIndex, subPixelPosition, neededFormat, t, offset); + |