summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Reland two changes for establishing gpu channel98-basedMichal Klocek2022-10-242-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 244709: Stop orphan child processes from staying alive on Windows https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/244709 Stop orphan child processes from staying alive on Windows Starting with Qt 5.11, on Windows, when the main WebEngine process crashed, the child render process would stay alive and use a whole CPU core trying to do something. What happened was that an existing layer tree frame sink was invalidated, and a request to create a new one was issued via RequestNewLayerTreeFrameSink, which failed due to the main process being dead, which scheduled a new request, and so on, which caused the child process main thread message loop to never exit. In Qt 5.10, this did not happen, because when the first request to create the sink failed, a new "software sink" was successfully created that did not depend on the host GPU process thread (see RenderThreadImpl::RequestNewLayerTreeFrameSink in render_thread_impl.cc). Thus the message loop ran out of tasks to execute, and could gracefully quit. The "software sink" code branch was removed in Qt 5.11+. Thus the hacky fix is to try and create the sink only a certain amount of times, and stop scheduling new requests after that. ------------------------------------------------------------------ 426757: Fix endless loop on race condition on qemu startup https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/426757 Fix endless loop on race condition on qemu startup Fix a weird race condition which ends in endless loop with a single-process, when gpu_channel_host is not ready in WidgetBase::RequestNewLayerTreeFrameSink and calls callbeck with nullptr, which ends in LayerTreeView::DidFailToInitializeLayerTreeFrameSink which again calls RequestNewLayerTreeFrameSink without giving a chance to initialize channel and round repeats itself. Give 10ms delay to cover the issue. ------------------------------------------------------------------ Fixes: QTBUG-105063 Task-number: QTBUG-69030 Task-number: QTBUG-105342 Change-Id: Icf3e4c75e009ae7b171a9e9ce2a394f8de421737 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit f07fb08039600e78bac0d8ac998bec5617650a2e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix debug builds on arm32Michal Klocek2022-09-151-1/+7
| | | | | | | | | | | | Debug build with neon and arm32 ends in compilation error "'asm' operand has impossible constraints" for raw_neon.cc most likely due to limited number of registers, therefore simply remove frame pointer in case of debug. Change-Id: I8be9ebf5c00f8e43aebfa6cf088665f85a25b7e1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 9988434eb583bff9255e7700d26bb947c5aee4ad) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Disable accelerated_2d_canvas for Intel drivers on WindowsPeter Varga2022-08-181-0/+12
| | | | | | | | Task-number: QTBUG-104065 Change-Id: I1559d97040b600b2cb4189eb5fa7d0721673d68b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit b80db99e96a39c864b7ee0c66fb7e99744196c66) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Rewrite array for token/unguessable tokenMichal Klocek2022-07-252-10/+15
| | | | | | | | | | | | | Use union to wrap array as with neon intrinsics this gets miss-compiled and ends up triggering alignment trap on arm32. Note the same code without neon support works just fine. Fixes: QTBUG-104477 Fixes: QTBUG-103149 Change-Id: I9dd183c16874021e62135c5dcfa6865ab9783fcf Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit bb8a10a90551248e5da3d569a6f3731a5a47a968) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* FIXUP: Fix gn build windows issuePeter Varga2022-06-212-1/+4
| | | | | | | Omit /link flag if linking with lld-link. Change-Id: I924e954225f713ba11844478f8a5b55401e13117 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix build with Clang 10.0.0, C++20, jumbo=20Marc Mutz2022-06-201-1/+1
| | | | | | | | | | | | | | | | | | As per the C++ standard, name lookup stopped at the nested content::features namespace, and didn't continue to ::features: service_worker_context_wrapper.cc:1426:18: error: no member named 'kStorageServiceOutOfProcess' in namespace 'content::features'; did you mean '::features::kStorageServiceOutOfProcess'? features::kStorageServiceOutOfProcess)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ::features::kStorageServiceOutOfProcess qtwebengine/src/3rdparty/chromium/content/public/common/content_features.h:208:43: note: '::features::kStorageServiceOutOfProcess' declared here Fix by using a fully-qualified name. Pick-to: 94-based Change-Id: I000077bf5a1343bb0afce3f2f7f430f898d96380 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* FIXUP: Adapt autofill component for WebEnginePeter Varga2022-06-162-0/+9
| | | | | | | | | - Exclude autofill_log_router_factory sources. It is not used but breaks linking. - Keep //ui/accessibility dependency. Change-Id: Id1d0d00c23e2714e27f27a206e993a66582bd2e8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Adapt autofill component for WebEnginePeter Varga2022-06-1014-3/+281
| | | | | | | | | Only enable minimal code for datalist support and avoid dependencies which can't be built. Task-number: QTBUG-54433 Change-Id: I04086e3063a535c65049b563df64f5133acd41d2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* FIXUP: Stop using C++20 initializationPeter Varga2022-06-102-6/+6
| | | | | | | | Fixes for autofill component. Task-number: QTBUG-54433 Change-Id: I0ed5a6e78f7eda32a180090fca19acccf9eb185a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix broken bundled zlib for cross compilationMichal Klocek2022-06-101-2/+3
| | | | | | | | | | | | | | | | | Bundled zlib when cross compiling with neon support assumes armv8 and requires built-in intrinsics for the ARMv8-A CRC32. However qt supports armv7 with neon support, which will end up in false armv8 outcome architecture for final library and will end up in unusable binaries for armv7 platform. Disable neon optimization for crc32, we should use system zlib anyway which is fixed in other patches. Task-number: QTBUG-103149 Pick-to: 94-based 90-based Change-Id: Ibfb5caa67cfea53b4c6a1bc1ed4948816c05ca38 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* FIXUP: Fix url_utils for QtWebEngineAllan Sandfeld Jensen2022-06-101-8/+14
| | | | | | | | | | | Allow redirects from local schemes to local schemes, and clean up the general logic. We still allow almost anything from custom url schemes. Pick-to: 94-based 90-based 87-based Fixes: QTBUG-99207 Change-Id: I7d1b7edc91f82064edbf6c1a41682d5874b42d12 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Make sure we do not compile minizip from 3rdpartyMichal Klocek2022-06-022-1/+4
| | | | | | | | | | | | | There are two minizips in chromium src tree, minizip from third_party/zlib and separate third_party/minizip. Remove minizip used for fuzzers. Sources could be removed with next adaptation. Task-number: QTBUG-103149 Pick-to: 94-based 90-based Change-Id: I30a9828dece43bf82e0be8d20ab8f2ccb2baab1d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Trim down some dependencies of push messagingSzabolcs David2022-06-0213-6/+272
| | | | | | | | | | Make push messaging working in WebEngine by guarding out code parts with large dependencies. Task-number: QTBUG-98904 Task-number: QTBUG-53457 Change-Id: Idd0a4d4c8ff8e1632e1802d027bd98f8838be921 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add back frame_id argument to PluginServiceFilter::IsPluginAvailable()Szabolcs David2022-05-207-4/+10
| | | | | | | | | It was removed in 98-based because Chrome stores plugin availibility per profile. Add it back to help query plugin settings from view-level WebEngineSettings. Change-Id: I1de52792fbdca099d220cbc7a579553cac2c05d2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge "Merge remote-tracking branch 'origin/upstream-master' into 98-based" ↵The Qt Project2022-05-20301-0/+57748
|\ | | | | | | into 98-based
| * Merge remote-tracking branch 'origin/upstream-master' into 98-basedAllan Sandfeld Jensen2022-05-11301-0/+57748
| |\ | | | | | | | | | Change-Id: Id028ba69e041f2a69969a6a4b57b3af3fad8b1b6
| | * Add sources for push-notificationsAllan Sandfeld Jensen2022-05-11301-0/+57748
| | | | | | | | | | | | | | | | | | Change-Id: Ibfaa78cdc3790b5936b2ae683328274ffc89c3bc Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | | v8/cppgc: add header for std::exchangeBenjamin Terrier2022-05-161-0/+1
| | | | | | | | | | | | | | | Change-Id: I3544c7c58504259427c55e797f4245eb72705308 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | symbolize: add header for std::exchangeSamuli Piippo2022-05-131-0/+1
|/ / | | | | | | | | | | | | | | | | | | | 3rdparty/chromium/base/third_party/symbolize/symbolize.h: In constructor 'google::FileDescriptor::FileDescriptor(google::FileDescriptor&&)': | 3rdparty/chromium/base/third_party/symbolize/symbolize.h:123:53: error: 'exchange' is not a member of 'std' | 123 | FileDescriptor(FileDescriptor&& other) : fd_(std::exchange(other.fd_, -1)) {} | | ^~~~~~~~ Change-Id: Iefea0d4b2917992ccb54935cea7abca127f2726b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | FIXUP: Disable alternate window station of Windows sandboxPeter Varga2022-05-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | This is necessary after upstream change: 5129a5e714d67 Win: Initialize alternate desktop earlier. https://chromium-review.googlesource.com/c/chromium/src/+/2656961 Change-Id: Icdca68666b32c84a6335ca7f044a77cb6061cf69 Fixes: QTBUG-102738 Pick-to: 94-based 90-based Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Find fontconfig using pkg-configAllan Sandfeld Jensen2022-05-092-2/+4
| | | | | | | | | | | | | | | | | | We already verify that it can be found like that during configure Pick-to: 94-based 90-based Task-number: QTBUG-61158 Change-Id: I569590e96a490c4ed6e6dc560fbd110d86d77956 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Minor. Add defined to checksMichal Klocek2022-04-221-2/+2
| | | | | | | | | | | | Pick-to: 94-based Change-Id: If1ccdb9d3db8a7c1bf4768d730689c78679d0012 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Minor. Use FilePath directly for qt sandbox pathMichal Klocek2022-04-221-4/+3
| | | | | | | | | | Change-Id: I27da11d1b47b13c2dec7093ea573b9afc1d8505d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | FIXUP: Fixes for building with MSVCPeter Varga2022-04-112-7/+8
| | | | | | | | | | | | | | | | | | | | Add missing CR_EXPAND_ARG(). Fixes Windows assert: [10320:8936:0406/165557.278:FATAL:histogram.cc(828)] Check failed: valid_arguments. Change-Id: Ifa162213bc8f98ae110629636b5779a54600a0c1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix mac toolchain python linker script callMichal Klocek2022-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | Do not call script directly as it has shabang with just 'python' and we want use same python interpreter as configured for gn. It fixes the issue when mac machine has only 'python3' interpreter installed and no 'python' symlink. Change-Id: If656453ade7c49d61edc90763a0b07f49483d129 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Do not initialize default locale in local isolateMichal Klocek2022-03-291-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | The patch https://chromium-review.googlesource.com/c/v8/v8/+/3268465 made a default locale moved to local isolate. This will break resetting the default locale while application runs. Do not internalize the default locale in local isolate and let it be lazy initialized directly from icu. Change-Id: I2dbe757bdd47b0b6bc0fb7be757235475f96e0a2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix clang buildMichal Klocek2022-03-281-0/+1
| | | | | | | | | | | | | | Fix "unknown type name 'uint8_t'". Change-Id: Idd6a3877f16ae2bf1d3da5f53c2328a95111bd17 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | FIXUP: Fixes for building with MSVCAllan Sandfeld Jensen2022-03-2430-22/+86
| | | | | | | | | | Change-Id: I92adc5c19b07b531fd5d6e2f26537dc51fd70922 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Do not override ios settingsMichal Klocek2022-03-211-1/+2
| | | | | | | | | | | | | | | | We do setup on qt side, do not override. Change-Id: I29145205fdd8e0cac1f782f3ab1b92b3e2dbb3b6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Fix compilation with system ICUKirill Burtsev2022-03-171-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | Update shim headers - https://unicode-org.atlassian.net/browse/ICU-20601 - https://github.com/unicode-org/icu/pull/759 Change-Id: Ie05c005ebcded9a228386db5d9abe9863787ec2b Fixes: QTBUG-78911 Reviewed-by: Jimi Huotari <chiitoo@gentoo.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add switch for static and dynamic crtMichal Klocek2022-03-171-1/+8
| | | | | | | | | | | | Task-number: QTBUG-94046 Change-Id: I04f3ae2e05413dc34e87358cd60b359dedba3552 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Do not add glType to command line againMichal Klocek2022-03-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Skip setting up again glType as for in-process gpu command_line = browser_command_line in AppendGpuCommandLine. Note this is not an issue if gpu runs as it own process as command_line != browser_command_line in that case. glType is only set by web engine context creation. Task-number: QTBUG-100713 Change-Id: I1c3a703a2ed27fb72714dbcae75e6bd7d00abf9d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add crossbuild support for x64/x86 on macos-arm64Allan Sandfeld Jensen2022-03-165-7/+57
| | | | | | | | | | | | | | Task-number: QTBUG-100672 Change-Id: I3081d927ad4bf151486eb1de5e7491a08a41b073 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 7e3cb70a2c4408f18e53d467329cf3a9edfcfe13)
* | FIXUP: Fix QtWebEngine build on all platformsAllan Sandfeld Jensen2022-03-164-9/+5
| | | | | | | | | | Change-Id: Iedab27ecb48a3ee293778b7f6518472ef990662c Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | FIXUP: Fix enable_extension=false buildsAllan Sandfeld Jensen2022-03-161-3/+0
| | | | | | | | | | Change-Id: I2eb00723e63c8f4d4cfff3cc7a29384967095703 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | FIXUP: Fixes for jumbo buildAllan Sandfeld Jensen2022-03-164-21/+26
| | | | | | | | | | Change-Id: Ib42dd310459fd4d6d2624b91fd0698947d51f977 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Fix static build with qt3rdparty libsMichal Klocek2022-03-109-37/+13
| | | | | | | | | | | | | | | | | | | | | | | | Make fixes for cmake builds, where we need to use config("<foo_lib>_from_qt") as we do not know include paths in time of cmake configure run, but during build time. Task-number: QTBUG-87154 Task-number: QTBUG-88614 Change-Id: I27a9a164c148434606bc0e45a8e996257a80b88f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | FIXUP: Qt GN integrationAllan Sandfeld Jensen2022-03-102-1/+13
| | | | | | | | | | Change-Id: I55864bfc1e8715b11f7692eaea62d837eee609eb Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | FIXUP: Fixes for jumbo buildAllan Sandfeld Jensen2022-03-108-14/+19
| | | | | | | | | | Change-Id: I204020f46fab5103ee487dfb3194b477ee78d10f Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | FIXUP: Fix building with system ffmpeg < 5.0Allan Sandfeld Jensen2022-03-101-2/+2
| | | | | | | | | | | | | | Change-Id: Ib5d252a900923acf321eee65e78538e83f7cbeef Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit b5afc89ed071fc7f5951ab87f4a1665fc041ff03) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* | [Backport] sandbox: build if glibc 2.34+ dynamic stack size is enabledPeter Varga2022-03-101-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Compilation of sandbox fails when using dynamic stack size in glibc 2.34 or newer. This is because the value is not a literal anymore but obtained through sysconf. To avoid this, use memset to put zeros in the buffer. Pick-to: 87-based 90-based 94-based Change-Id: Iff7ddca815378ab1de2f3ca2d200d8db75f42dd2 Review-URL: https://chromium-review.googlesource.com/c/chromium/src/+/3436947 Cr-Commit-Position: refs/heads/main@{#967943} Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | FIXUP: Add extensions to Qt build and fix it up for buildingAllan Sandfeld Jensen2022-03-101-0/+4
| | | | | | | | | | Change-Id: I258178a48abe33c23a58eec59a74bf7e8124491f Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Fix building with optimize_webui=falsePeter Varga2022-03-081-19/+25
| | | | | | | | | | Change-Id: Ia9ceff551afe868b623dc5a1131215abac8fad5e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | [Revert] base: Provide a way to customize fallback allocator for StackVectorAllan Sandfeld Jensen2022-03-082-77/+30
| | | | | | | | | | | | | | Reverted patch reviewed on: https://chromium-review.googlesource.com/c/chromium/src/+/3310901 Change-Id: I3ef4f7bf3779ad10b1e0686f02ffa2bd9a1f95c1 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | FIXUP: Fix enable_extension=false buildsAllan Sandfeld Jensen2022-03-083-10/+8
| | | | | | | | | | Change-Id: Ic2355ccf3476fefb0142ded9d4d64d40a9ec9751 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Fix building with system ffmpegAllan Sandfeld Jensen2022-03-081-4/+14
| | | | | | | | | | | | | | | | | | Work around av_stream_get_first_dts, and size_t* arguments, that appear to be specific to Chromium. Pick-to: 94-based Change-Id: I0acba00304552ef568e4d9c48b8dd2d8a128c963 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Don't use Chromium's OSExchangeDataProviderFactory::CreateProvider()Alexandru Croitor2022-03-083-2/+22
| | | | | | | | | | | | | | | | | | There is a Qt implementation of CreateProvider in src/core/chromium_overrides.cpp Change-Id: Ibc6bc4e86b7f1f0d8d80e0809d0be7fda3e6e35a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | [Backport] IWYU: Missing include for RenderFrameHost in document_service.hPeter Varga2022-03-081-1/+1
| | | | | | | | | | | | | | | | Bug: none Change-Id: I027d763a8c23013dfb6554993bd9da5af9bd112c Review-URL: https://chromium-review.googlesource.com/c/chromium/src/+/3501698 Cr-Commit-Position: refs/heads/main@{#977711} Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | FIXUP: Fix printing sources for Qt and add them to the build.Allan Sandfeld Jensen2022-03-042-2/+4
| | | | | | | | | | Change-Id: Ie5a68323ad99257ee5dc3a6868e5e2d3b6a4bd80 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | [Backport] Fix for non-constant SIGSTKSZPeter Varga2022-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On glibc > 2.33, `SIGSTKSZ` might not be constant (in which case it expands to a call to `sysconf` which returns a `long int`); see https://sourceware.org/pipermail/libc-alpha/2020-October/118513.html Pass unsigned explicitly to std::max, to avoid relying on template argument deduction. This works both with the old-style constant `SIGSTKSZ` and the new configurable one. Initially based on https://chromium-review.googlesource.com/c/2776379 Change-Id: I2279e8423aa70987ce4537674c7291216d23062f Review-URL: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3340721 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>