drop shadow build (to match other qt5 packages where it has been problematic)
drop upstreamed patches
rebase no-icudtl-dat.patch
pull in upstream gcc8 FTBFS fix
update clean_ffmpeg whitelist
patches needswork: system-nspr-prtime,system-icu-utf,no-sse2,skia-neon,icu59
minimal debug/debuginfo (for now)
use macros %make_build %ldconfig_scriptlets %__ninja %__ninja_common_opts
This commit is contained in:
Rex Dieter 2018-06-16 08:29:33 -05:00
parent 2ef1c5e991
commit 635c366f48
10 changed files with 164 additions and 1451 deletions

1
.gitignore vendored
View File

@ -13,3 +13,4 @@
/qtwebengine-opensource-src-5.9.3-clean.tar.xz
/qtwebengine-everywhere-src-5.10.0-clean.tar.xz
/qtwebengine-everywhere-src-5.10.1-clean.tar.xz
/qtwebengine-everywhere-src-5.11.0-clean.tar.xz

View File

@ -0,0 +1,84 @@
From 96f354df27c2f3c7c1b221b676c7a1af6b3da375 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCri=20Valdmann?= <juri.valdmann@qt.io>
Date: Mon, 14 May 2018 10:15:50 +0200
Subject: [PATCH 02/29] Fix build with GCC 8.1.0
Task-number: QTBUG-68203
Change-Id: I780d884d5e20ef04e902d7b449da4aa3f97d8d0b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
---
.../mojo/public/cpp/bindings/associated_interface_ptr_info.h | 2 +-
.../mojo/public/cpp/bindings/associated_interface_request.h | 2 +-
chromium/mojo/public/cpp/bindings/interface_request.h | 2 +-
.../mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h | 2 ++
chromium/mojo/public/cpp/system/handle.h | 2 +-
5 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h b/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h
index 1f79662bd7..184ba6a9e8 100644
--- a/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h
+++ b/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h
@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo {
bool is_valid() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return !!handle_; }
ScopedInterfaceEndpointHandle PassHandle() {
return std::move(handle_);
diff --git a/chromium/mojo/public/cpp/bindings/associated_interface_request.h b/chromium/mojo/public/cpp/bindings/associated_interface_request.h
index 12d2f3ce1d..fcdc2b9321 100644
--- a/chromium/mojo/public/cpp/bindings/associated_interface_request.h
+++ b/chromium/mojo/public/cpp/bindings/associated_interface_request.h
@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest {
// handle.
bool is_pending() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return !!handle_; }
ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); }
diff --git a/chromium/mojo/public/cpp/bindings/interface_request.h b/chromium/mojo/public/cpp/bindings/interface_request.h
index 1007cb0b8c..da1f3244a3 100644
--- a/chromium/mojo/public/cpp/bindings/interface_request.h
+++ b/chromium/mojo/public/cpp/bindings/interface_request.h
@@ -54,7 +54,7 @@ class InterfaceRequest {
// Indicates whether the request currently contains a valid message pipe.
bool is_pending() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return !!handle_; }
// Removes the message pipe from the request and returns it.
ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); }
diff --git a/chromium/mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h b/chromium/mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h
index 5d00e5019e..ef8a927ba6 100644
--- a/chromium/mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h
+++ b/chromium/mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h
@@ -45,6 +45,8 @@ class MOJO_CPP_BINDINGS_EXPORT ScopedInterfaceEndpointHandle {
bool is_valid() const;
+ explicit operator bool() const { return is_valid(); }
+
// Returns true if the interface hasn't associated with a message pipe.
bool pending_association() const;
diff --git a/chromium/mojo/public/cpp/system/handle.h b/chromium/mojo/public/cpp/system/handle.h
index 7c886e8825..c9f9e961db 100644
--- a/chromium/mojo/public/cpp/system/handle.h
+++ b/chromium/mojo/public/cpp/system/handle.h
@@ -121,7 +121,7 @@ class ScopedHandleBase {
bool is_valid() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return !!handle_; }
bool operator==(const ScopedHandleBase& other) const {
return handle_.value() == other.get().value();
--
2.17.1

View File

@ -99,10 +99,15 @@ header_files=" libavutil/x86/asm.h \
libavcodec/arm/vp56_arith.h \
libavcodec/arm/vp8.h \
libavcodec/arm/vp8dsp.h \
libavcodec/aac_ac3_parser.h \
libavcodec/ac3_parser_internal.h \
libavcodec/ac3.h \
libavcodec/adts_header.h \
libavcodec/avcodec.h \
libavcodec/blockdsp.h \
libavcodec/bytestream.h \
libavcodec/dct.h \
libavcodec/dct32.h \
libavcodec/dsputil.h \
libavcodec/dv_profile_internal.h \
libavcodec/error_resilience.h \
@ -119,12 +124,19 @@ header_files=" libavutil/x86/asm.h \
libavcodec/h264pred.h \
libavcodec/hpeldsp.h \
libavcodec/hwaccel.h \
libavcodec/hwaccels.h \
libavcodec/idctdsp.h \
libavcodec/internal.h \
libavcodec/mathops.h \
libavcodec/mdct15.h \
libavcodec/me_cmp.h \
libavcodec/motion_est.h \
libavcodec/mpegaudio_tablegen.h \
libavcodec/mpegaudiodectab.h \
libavcodec/mpegaudiodsp.h \
libavcodec/mpeg12.h \
libavcodec/mpeg12data.h \
libavcodec/mpeg12vlc.h \
libavcodec/mpegpicture.h \
libavcodec/mpegutils.h \
libavcodec/mpegvideo.h \
@ -132,6 +144,8 @@ header_files=" libavutil/x86/asm.h \
libavcodec/mpegvideoencdsp.h \
libavcodec/old_codec_ids.h \
libavcodec/options_table.h \
libavcodec/opus_celt.h \
libavcodec/opus_pvq.h \
libavcodec/opus_rc.h \
libavcodec/pcm_tablegen.h \
libavcodec/pel_template.c \
@ -211,12 +225,15 @@ manual_files=" libavutil/x86/x86inc.asm \
libavutil/x86/float_dsp.asm \
libavutil/x86/lls.asm \
libavcodec/bit_depth_template.c \
libavcodec/dct32_template.c \
libavcodec/fft_template.c \
libavcodec/h264pred_template.c \
libavcodec/hpel_template.c \
libavcodec/hpeldsp_template.c \
libavcodec/mdct_template.c \
libavcodec/pel_template.c \
libavcodec/mpegaudiodec_template.c \
libavcodec/mpegaudiodsp_template.c
libavcodec/mpegaudiodsp.c \
libavcodec/videodsp_template.c \
libavcodec/flacdec.c \
libavcodec/flacdsp.c \

View File

@ -21,7 +21,7 @@
if [ -z "$1" ] ; then
echo "usage: ./clean_qtwebengine.sh VERSION"
echo "e.g.: ./clean_qtwebengine.sh 5.10.0"
echo "e.g.: ./clean_qtwebengine.sh 5.11.0"
exit 1
fi

View File

@ -6,7 +6,7 @@
# define to build docs, need to undef this for bootstrapping
# where qt5-qttools (qt5-doctools) builds are not yet available
# disable on Rawhide for now
%if 0%{?fedora} < 28
%if 0%{?fedora} < 29
%global docs 1
%endif
@ -23,7 +23,8 @@
# the QMake CONFIG flags to force debugging information to be produced in
# release builds, and for all parts of the code
%ifarch %{arm}
#ifarch %{arm}
%if 1
# the ARM builder runs out of memory during linking with the full setting below,
# so omit debugging information for the parts upstream deems it dispensable for
# (webcore, v8base)
@ -49,8 +50,8 @@
Summary: Qt5 - QtWebEngine components
Name: qt5-qtwebengine
Version: 5.10.1
Release: 7%{?dist}
Version: 5.11.0
Release: 1%{?dist}
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
# See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
@ -58,7 +59,7 @@ Release: 7%{?dist}
License: (LGPLv2 with exceptions or GPLv3 with exceptions) and BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
URL: http://www.qt.io
# cleaned tarball with patent-encumbered codecs removed from the bundled FFmpeg
# wget http://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qtwebengine-everywhere-src-5.10.1.tar.xz
# wget http://download.qt.io/official_releases/qt/5.11/5.11.0/submodules/qtwebengine-everywhere-src-5.11.0.tar.xz
# ./clean_qtwebengine.sh 5.10.1
Source0: qtwebengine-everywhere-src-%{version}-clean.tar.xz
# cleanup scripts used above
@ -73,7 +74,7 @@ Patch0: qtwebengine-everywhere-src-5.10.0-linux-pri.patch
# resulting warnings - not upstreamable as is because it removes the fallback
# mechanism for the ICU data directory (which is not used in our builds because
# we use the system ICU, which embeds the data statically) completely
Patch1: qtwebengine-opensource-src-5.6.0-no-icudtl-dat.patch
Patch1: qtwebengine-everywhere-src-5.11.0-no-icudtl-dat.patch
# fix extractCFlag to also look in QMAKE_CFLAGS_RELEASE, needed to detect the
# ARM flags with our %%qmake_qt5 macro, including for the next patch
Patch2: qtwebengine-opensource-src-5.9.0-fix-extractcflag.patch
@ -118,20 +119,7 @@ Patch22: qtwebengine-everywhere-src-5.10.0-icu59.patch
# to get the value we expect (and chromium checks for). Patch by spot.
Patch23: qtwebengine-everywhere-src-5.10.1-gcc8-alignof.patch
## Upstream patches:
# drop support for obsolete Unicode "aspirational scripts" (dropped in UTS 31),
# fixes #error with ICU >= 60 (which was a reminder to double-check the list)
# see: http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts
# backport of: https://chromium-review.googlesource.com/c/chromium/src/+/731871
Patch100: qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts.patch
# forward-port security backports from 5.9.5 LTS (up to Chromium 65.0.3325.146)
# see the patch metadata for the list of fixed CVEs and Chromium bug IDs
# omit the Chromium bug 806122 fix because we do not ship that FFmpeg file
Patch101: qtwebengine-everywhere-src-5.10.1-security-5.9.5.patch
# fix incomplete (and thus having no effect) fix for CVE-2018-6033 in 5.10.1
# (forward-ported from 5.9.5, will also be included in 5.11)
Patch102: qtwebengine-everywhere-src-5.10.1-CVE-2018-6033.patch
# From 5.11 branch, fix build against Qt 5.11.x
Patch103: 0027-Fix-compilation-of-simplebrowser-example.patch
Patch102: 0002-Fix-build-with-GCC-8.1.0.patch
# handled by qt5-srpm-macros, which defines %%qt5_qtwebengine_arches
ExclusiveArch: %{qt5_qtwebengine_arches}
@ -371,20 +359,27 @@ BuildArch: noarch
%if !0%{?arm_neon}
%patch3 -p1 -b .no-neon
%endif
%patch4 -p1 -b .system-nspr-prtime
%patch5 -p1 -b .system-icu-utf
%patch6 -p1 -b .no-sse2
## upstream patches
pushd src/3rdparty/chromium
%patch102 -p2 -b .0002
popd
##FIXME/TODO rebase
#patch4 -p1 -b .system-nspr-prtime
#patch5 -p1 -b .system-icu-utf
#patch6 -p1 -b .no-sse2
%ifarch %{ix86}
#global sse2 1
%endif
%patch9 -p1 -b .arm-fpu-fix
%patch10 -p1 -b .openmax-dl-neon
%patch11 -p1 -b .skia-neon
#patch11 -p1 -b .skia-neon
%patch12 -p1 -b .webrtc-neon-detect
%patch21 -p1 -b .gn-bootstrap-verbose
%patch22 -p1 -b .icu59
#patch22 -p1 -b .icu59
%patch23 -p1 -b .gcc8
%patch100 -p1 -b .no-aspirational-scripts
%patch101 -p1 -b .security-5.9.5
%patch102 -p1 -b .CVE-2018-6033
%patch103 -p1 -b .0027
# fix // in #include in content/renderer/gpu to avoid debugedit failure
sed -i -e 's!gpu//!gpu/!g' \
src/3rdparty/chromium/content/renderer/gpu/compositor_forwarding_message_filter.cc
@ -427,27 +422,23 @@ cp -p src/3rdparty/chromium/LICENSE LICENSE.Chromium
%build
export STRIP=strip
export NINJAFLAGS="-v %{_smp_mflags}"
export NINJA_PATH=%{_bindir}/ninja-build
mkdir %{_target_platform}
pushd %{_target_platform}
export NINJAFLAGS="%{__ninja_common_opts}"
export NINJA_PATH=%{__ninja}
%{qmake_qt5} CONFIG+="%{debug_config}" \
QMAKE_EXTRA_ARGS+="-system-webengine-icu" ..
QMAKE_EXTRA_ARGS+="-system-webengine-icu" .
make %{?_smp_mflags}
%make_build
%if 0%{?docs}
make %{?_smp_mflags} docs
%make_build docs
%endif
popd
%install
make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}
make install INSTALL_ROOT=%{buildroot}
%if 0%{?docs}
make install_docs INSTALL_ROOT=%{buildroot} -C %{_target_platform}
make install_docs INSTALL_ROOT=%{buildroot}
%endif
# rpm macros
@ -489,8 +480,7 @@ sed -i -e "s|%{version} \${_Qt5WebEngine|%{lesser_version} \${_Qt5WebEngine|" \
%{buildroot}%{_qt5_libdir}/cmake/Qt5WebEngine*/Qt5WebEngine*Config.cmake
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%ldconfig_scriptlets
%filetriggerin -- %{_datadir}/myspell
while read filename ; do
@ -509,7 +499,8 @@ done
%{_qt5_bindir}/qwebengine_convert_dict
%{_qt5_libdir}/qt5/qml/*
%{_qt5_libdir}/qt5/libexec/QtWebEngineProcess
%ifarch %{ix86}
#ifarch %{ix86}
%if 0%{?sse2}
# shared V8 library and its SSE2 version
%{_qt5_libdir}/qtwebengine/
%endif
@ -590,6 +581,17 @@ done
%changelog
* Thu Jun 14 2018 Rex Dieter <rdieter@fedoraproject.org> - 5.11.0-1
- 5.11.0
- drop shadow build (to match other qt5 packages where it has been problematic)
- drop upstreamed patches
- rebase no-icudtl-dat.patch
- pull in upstream gcc8 FTBFS fix
- update clean_ffmpeg whitelist
- patches needswork: system-nspr-prtime,system-icu-utf,no-sse2,skia-neon,icu59
- minimal debug/debuginfo (for now)
- use macros %%make_build %%ldconfig_scriptlets %%__ninja %%__ninja_common_opts
* Sun May 27 2018 Rex Dieter <rdieter@fedoraproject.org> - 5.10.1-7
- rebuild (qt5 5.11.0)
- Add patch by spot from the Fedora Chromium RPM for FTBFS with GCC 8 on i686

View File

@ -1,86 +0,0 @@
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc 2017-12-25 19:38:17.621271052 +0100
@@ -331,39 +331,6 @@
const icu::UnicodeSet* inclusion_set = uspoof_getInclusionUnicodeSet(status);
allowed_set.addAll(*inclusion_set);
-// Five aspirational scripts are taken from UTR 31 Table 6 at
-// http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts .
-// Not all the characters of aspirational scripts are suitable for
-// identifiers. Therefore, only characters belonging to
-// [:Identifier_Type=Aspirational:] (listed in 'Status/Type=Aspirational'
-// section at
-// http://www.unicode.org/Public/security/latest/xidmodifications.txt) are
-// are added to the allowed set. The list has to be updated when a new
-// version of Unicode is released. The current version is 9.0.0 and ICU 60
-// will have Unicode 10.0 data.
-#if U_ICU_VERSION_MAJOR_NUM < 60
- const icu::UnicodeSet aspirational_scripts(
- icu::UnicodeString(
- // Unified Canadian Syllabics
- "[\\u1401-\\u166C\\u166F-\\u167F"
- // Mongolian
- "\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA"
- // Unified Canadian Syllabics
- "\\u18B0-\\u18F5"
- // Tifinagh
- "\\u2D30-\\u2D67\\u2D7F"
- // Yi
- "\\uA000-\\uA48C"
- // Miao
- "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7E"
- "\\U00016F8F-\\U00016F9F]",
- -1, US_INV),
- *status);
- allowed_set.addAll(aspirational_scripts);
-#else
-#error "Update aspirational_scripts per Unicode 10.0"
-#endif
-
// The sections below refer to Mozilla's IDN blacklist:
// http://kb.mozillazine.org/Network.IDN.blacklist_chars
//
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc 2017-12-25 19:38:17.621271052 +0100
@@ -132,22 +132,24 @@
{"xn---123-kbjl2j0bl2k.in", L"\x0939\x093f\x0928\x094d\x0926\x0940-123.in",
true},
- // 5 Aspirational scripts
+ // What used to be 5 Aspirational scripts in the earlier versions of UAX 31.
+ // UAX 31 does not define aspirational scripts any more.
+ // See http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts .
// Unifieid Canadian Syllabary
- {"xn--dfe0tte.ca", L"\x1456\x14c2\x14ef.ca", true},
+ {"xn--dfe0tte.ca", L"\x1456\x14c2\x14ef.ca", false},
// Tifinagh
{"xn--4ljxa2bb4a6bxb.ma", L"\x2d5c\x2d49\x2d3c\x2d49\x2d4f\x2d30\x2d56.ma",
- true},
+ false},
// Tifinagh with a disallowed character(U+2D6F)
{"xn--hmjzaby5d5f.ma", L"\x2d5c\x2d49\x2d3c\x2d6f\x2d49\x2d4f.ma", false},
// Yi
- {"xn--4o7a6e1x64c.cn", L"\xa188\xa320\xa071\xa0b7.cn", true},
+ {"xn--4o7a6e1x64c.cn", L"\xa188\xa320\xa071\xa0b7.cn", false},
// Mongolian - 'ordu' (place, camp)
- {"xn--56ec8bp.cn", L"\x1823\x1837\x1833\x1824.cn", true},
+ {"xn--56ec8bp.cn", L"\x1823\x1837\x1833\x1824.cn", false},
// Mongolian with a disallowed character
{"xn--95e5de3ds.cn", L"\x1823\x1837\x1804\x1833\x1824.cn", false},
// Miao/Pollad
- {"xn--2u0fpf0a.cn", L"\U00016f04\U00016f62\U00016f59.cn", true},
+ {"xn--2u0fpf0a.cn", L"\U00016f04\U00016f62\U00016f59.cn", false},
// Script mixing tests
// The following script combinations are allowed.
@@ -606,7 +608,7 @@
L"a\x144a"
L"b.com",
false},
- {"xn--xcec9s.com", L"\x1401\x144a\x1402.com", true},
+ {"xn--xcec9s.com", L"\x1401\x144a\x1402.com", false},
// Custom dangerous patterns
// Two Katakana-Hiragana combining mark in a row

View File

@ -1,64 +0,0 @@
From 1fd21185614dcae0c7a6e5647ba56cff0120f563 Mon Sep 17 00:00:00 2001
Message-Id: <1fd21185614dcae0c7a6e5647ba56cff0120f563.1521386919.git.kevin.kofler@chello.at>
From: Michal Klocek <michal.klocek@qt.io>
Date: Wed, 7 Mar 2018 18:36:25 +0100
Subject: [PATCH] Implement IsMostRecentDownloadItemAtFilePath call
Implement IsMostRecentDownloadItemAtFilePath
for download_manager_delegate_qt. This is required for
CVE-2018-6033.
Change-Id: I9f48dfa159d684f0fda894e68b81ff622aceaae2
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
---
src/core/download_manager_delegate_qt.cpp | 20 ++++++++++++++++++++
src/core/download_manager_delegate_qt.h | 2 ++
2 files changed, 22 insertions(+)
diff --git a/src/core/download_manager_delegate_qt.cpp b/src/core/download_manager_delegate_qt.cpp
index 40df9b3a..487a831e 100644
--- a/src/core/download_manager_delegate_qt.cpp
+++ b/src/core/download_manager_delegate_qt.cpp
@@ -293,6 +293,26 @@ void DownloadManagerDelegateQt::ChooseSavePath(content::WebContents *web_content
m_weakPtrFactory.GetWeakPtr()));
}
+bool DownloadManagerDelegateQt::IsMostRecentDownloadItemAtFilePath(content::DownloadItem *download)
+{
+ content::BrowserContext *context = download->GetBrowserContext();
+ std::vector<content::DownloadItem*> all_downloads;
+
+ content::DownloadManager* manager =
+ content::BrowserContext::GetDownloadManager(context);
+ if (manager)
+ manager->GetAllDownloads(&all_downloads);
+
+ for (const auto* item : all_downloads) {
+ if (item->GetGuid() == download->GetGuid() ||
+ item->GetTargetFilePath() != download->GetTargetFilePath())
+ continue;
+ if (item->GetState() == content::DownloadItem::IN_PROGRESS)
+ return false;
+ }
+ return true;
+}
+
void DownloadManagerDelegateQt::savePackageDownloadCreated(content::DownloadItem *item)
{
OnDownloadUpdated(item);
diff --git a/src/core/download_manager_delegate_qt.h b/src/core/download_manager_delegate_qt.h
index df43211e..7563d5d3 100644
--- a/src/core/download_manager_delegate_qt.h
+++ b/src/core/download_manager_delegate_qt.h
@@ -81,6 +81,8 @@ public:
const base::FilePath::StringType &default_extension,
bool can_save_as_complete,
const content::SavePackagePathPickedCallback &callback) override;
+ bool IsMostRecentDownloadItemAtFilePath(content::DownloadItem* download) override;
+
void cancelDownload(quint32 downloadId);
void pauseDownload(quint32 downloadId);
--
2.14.3

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,17 @@
diff -ur qtwebengine-opensource-src-5.6.0/src/core/web_engine_library_info.cpp qtwebengine-opensource-src-5.6.0-no-icudtl-dat/src/core/web_engine_library_info.cpp
--- qtwebengine-opensource-src-5.6.0/src/core/web_engine_library_info.cpp 2016-03-03 17:02:28.000000000 +0100
+++ qtwebengine-opensource-src-5.6.0-no-icudtl-dat/src/core/web_engine_library_info.cpp 2016-03-18 03:08:24.385444415 +0100
@@ -207,24 +207,7 @@
#if defined(OS_MACOSX) && defined(QT_MAC_FRAMEWORK_BUILD)
return getResourcesPath(frameworkBundle());
#else
diff -up qtwebengine-everywhere-src-5.11.0/src/core/web_engine_library_info.cpp.no-icudtl-dat qtwebengine-everywhere-src-5.11.0/src/core/web_engine_library_info.cpp
--- qtwebengine-everywhere-src-5.11.0/src/core/web_engine_library_info.cpp.no-icudtl-dat 2018-06-14 09:23:48.931195271 -0500
+++ qtwebengine-everywhere-src-5.11.0/src/core/web_engine_library_info.cpp 2018-06-14 09:27:26.248014325 -0500
@@ -258,28 +258,12 @@ QString dictionariesPath()
QString icuDataPath()
{
- static bool initialized = false;
static QString potentialResourcesPath = QLibraryInfo::location(QLibraryInfo::DataPath) % QLatin1String("/resources");
static QString potentialResourcesPath =
#if defined(OS_MACOSX) && defined(QT_MAC_FRAMEWORK_BUILD)
getResourcesPath(frameworkBundle());
#else
QLibraryInfo::location(QLibraryInfo::DataPath) % QLatin1String("/resources");
#endif
- if (!initialized) {
- initialized = true;
- if (!QFileInfo::exists(potentialResourcesPath % QLatin1String("/icudtl.dat"))) {
@ -22,7 +27,6 @@ diff -ur qtwebengine-opensource-src-5.6.0/src/core/web_engine_library_info.cpp q
- potentialResourcesPath = fallbackDir();
- }
- }
-
return potentialResourcesPath;
#endif
}

View File

@ -1 +1 @@
SHA512 (qtwebengine-everywhere-src-5.10.1-clean.tar.xz) = b992aef0d2f9fe7d40b5378519113d5c41577b120830bee86eda211ffc97649022d1deacf82916007fb9fd1b6e18a855d4890c79752142165e66e2ea047486b8
SHA512 (qtwebengine-everywhere-src-5.11.0-clean.tar.xz) = fb6a9a047e77478f6ea9bc9cdb4c7ea05520e9b2919a346d39e7eb09bd88747e35a97ef41bfa06aaed8eb9c3db9372c17dc4e24d1ed2e734f9bf6f58783c4616