mirror of
https://github.com/electron/electron.git
synced 2026-01-10 16:08:06 -05:00
* chore: bump chromium in DEPS to 117.0.5899.0 * 4686653: webui: Filter out non-chrome scheme URLs in WebUIConfigMap https://chromium-review.googlesource.com/c/chromium/src/+/4686653 * 4696355: Remove deprecated version of base::CommandLine::CopySwitchesFrom() https://chromium-review.googlesource.com/c/chromium/src/+/4696355 * chore: fixup patch indices * 4603888: Reland "Enable raw_ref check on linux" https://chromium-review.googlesource.com/c/chromium/src/+/4603888 * chore: bump chromium in DEPS to 117.0.5901.0 * chore: update patches * chore: bump chromium in DEPS to 117.0.5903.0 * chore: bump chromium in DEPS to 117.0.5903.2 * chore: bump chromium in DEPS to 117.0.5905.0 * 4706792: Printing: Add debug code for a DispatchBeforePrintEvent() failure https://chromium-review.googlesource.com/c/chromium/src/+/4706792 * 4704786: Refactor libunwind build rules/flags https://chromium-review.googlesource.com/c/chromium/src/+/4704786 * 4701710: [Linux Ui] Set toolkit dark preference based on FDO dark preference https://chromium-review.googlesource.com/c/chromium/src/+/4701710 * chore: fixup patch indices * chore: bump chromium in DEPS to 117.0.5907.0 * chore: bump chromium in DEPS to 117.0.5909.2 * chore: update patches * chore: bump chromium in DEPS to 117.0.5911.0 * chore: update patches * chore: build-what-we-include * fix: set allowFileAccess on devtools extensions correctly Ref: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4714725 * 4670615: Reland "[iterator-helpers] Shipping iterator helpers" https://chromium-review.googlesource.com/c/v8/v8/+/4670615 --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com> Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
41 lines
2.0 KiB
Diff
41 lines
2.0 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Charles Kerr <charles@charleskerr.com>
|
|
Date: Wed, 9 Jun 2021 14:28:08 -0500
|
|
Subject: refactor: restore base::AdaptCallbackForRepeating
|
|
|
|
Undo https://chromium-review.googlesource.com/c/chromium/src/+/2941842
|
|
to reinstate base::AdaptCallbackForRepeating(). It was removed to fix
|
|
https://bugs.chromium.org/p/chromium/issues/detail?id=730593 .
|
|
|
|
We use AdaptCallbackForRepeating() in about a dozen places. This patch
|
|
should be removed as soon as those have been updated. Patching because
|
|
every instance is a FTBFS that prevents testing any one instance's fix.
|
|
|
|
diff --git a/base/functional/callback_helpers.h b/base/functional/callback_helpers.h
|
|
index a04ff2452a68096bee9673d08bfa66b2fca8e7ba..098ef69594f2450a937d658f8fa710877a04481d 100644
|
|
--- a/base/functional/callback_helpers.h
|
|
+++ b/base/functional/callback_helpers.h
|
|
@@ -98,6 +98,22 @@ class OnceCallbackHolder final {
|
|
|
|
} // namespace internal
|
|
|
|
+// Wraps the given OnceCallback into a RepeatingCallback that relays its
|
|
+// invocation to the original OnceCallback on the first invocation. The
|
|
+// following invocations are just ignored.
|
|
+//
|
|
+// Note that this deliberately subverts the Once/Repeating paradigm of Callbacks
|
|
+// but helps ease the migration from old-style Callbacks. Avoid if possible; use
|
|
+// if necessary for migration. TODO(tzik): Remove it. https://crbug.com/730593
|
|
+template <typename... Args>
|
|
+RepeatingCallback<void(Args...)> AdaptCallbackForRepeating(
|
|
+ OnceCallback<void(Args...)> callback) {
|
|
+ using Helper = internal::OnceCallbackHolder<Args...>;
|
|
+ return base::BindRepeating(
|
|
+ &Helper::Run, std::make_unique<Helper>(std::move(callback),
|
|
+ /*ignore_extra_runs=*/true));
|
|
+}
|
|
+
|
|
// Wraps the given OnceCallback and returns two OnceCallbacks with an identical
|
|
// signature. On first invokation of either returned callbacks, the original
|
|
// callback is invoked. Invoking the remaining callback results in a crash.
|