Skip to content

Commit

Permalink
depends: Backport Qt bugfixes
Browse files Browse the repository at this point in the history
Dogecoin-Qt cannot upgrade Qt on a minor release without breaking
support for older systems, and thus preventing operators on these
to get important security updates. Therefore, it is important to
patch the fixed version of Qt we are stuck with when applicable.

This backports important bug fixes from later Qt versions that
harden Dogecoin-Qt's internals:

- Fix possible heap corruption in QXmlStream
  see: https://codereview.qt-project.org/c/qt/qtbase/+/236691

- do not attempt to load a library relative to $PWD
  see: https://codereview.qt-project.org/c/qt/qtbase/+/286795

- Fix specific overflow in qtextlayout
  see: https://codereview.qt-project.org/c/qt/qtbase/+/476125

- QDnsLookup/Unix: Ensure that both the RDATA and the Record header
  fields before it fall inside the buffer we have
  see: https://codereview.qt-project.org/c/qt/qtbase/+/477644

- Fix a crash while parsing an XML file with garbage data
  see: https://codereview.qt-project.org/c/qt/qtbase/+/471756
       https://codereview.qt-project.org/c/qt/qtbase/+/455027

- Fix crash when reading corrupt font data
  see: https://codereview.qt-project.org/c/qt/qtbase/+/503026
  • Loading branch information
patricklodder committed Feb 17, 2024
1 parent 7eaf406 commit 92b439f
Show file tree
Hide file tree
Showing 2 changed files with 485 additions and 0 deletions.
2 changes: 2 additions & 0 deletions depends/packages/qt.mk
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ $(package)_patches+=fix-xcb-include-order.patch
$(package)_patches+=fix_qfontengine_coretext.patch
$(package)_patches+=fix_qt_pkgconfig.patch
$(package)_patches+=no-xlib.patch
$(package)_patches+=backports-1.patch

$(package)_qttranslations_file_name=qttranslations-$($(package)_suffix)
$(package)_qttranslations_sha256_hash=3a15aebd523c6d89fb97b2d3df866c94149653a26d27a00aac9b6d3020bc5a1d
Expand Down Expand Up @@ -182,6 +183,7 @@ define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/fix_qfontengine_coretext.patch && \
patch -p1 < $($(package)_patch_dir)/fix_qt_pkgconfig.patch && \
patch -p1 -i $($(package)_patch_dir)/no-xlib.patch && \
patch -p1 < $($(package)_patch_dir)/backports-1.patch && \
echo "!host_build: QMAKE_CFLAGS += $($(package)_cflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
echo "!host_build: QMAKE_CXXFLAGS += $($(package)_cxxflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
echo "!host_build: QMAKE_LFLAGS += $($(package)_ldflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
Expand Down
Loading

0 comments on commit 92b439f

Please sign in to comment.