зеркало из https://github.com/electron/electron.git
48 строки
2.3 KiB
Diff
48 строки
2.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jacob Quant <jacobq@gmail.com>
|
|
Date: Thu, 31 Oct 2019 14:00:00 -0500
|
|
Subject: dom_storage_limits.patch
|
|
|
|
This patch increases the DOM storage (e.g. `localStorage`
|
|
and `sessionStorage`) size quota from 10MiB to 100MiB.
|
|
Previous versions of this patch attempted to circumvent
|
|
the restriction altogether.
|
|
However, this can lead to other problems, such as crashing
|
|
the Dev Tools when attempting to read or write values that exceed
|
|
`IPC::Channel::kMaximumMessageSize` (128MiB).
|
|
|
|
Increasing the quota rather than bypassing it reduces the
|
|
amount of chromium code that needs to be changed for Electron
|
|
as well as keeps these storage areas limited to a bounded
|
|
size meanwhile giving application developers more space to work with.
|
|
|
|
diff --git a/components/services/storage/dom_storage/dom_storage_constants.cc b/components/services/storage/dom_storage/dom_storage_constants.cc
|
|
index aa5edd1d07d97bee4912b14996ff804351240e94..8334b7eb6a3293c068f5234508f8dca780ccb262 100644
|
|
--- a/components/services/storage/dom_storage/dom_storage_constants.cc
|
|
+++ b/components/services/storage/dom_storage/dom_storage_constants.cc
|
|
@@ -6,7 +6,9 @@
|
|
|
|
namespace storage {
|
|
|
|
-const size_t kPerStorageAreaQuota = 10 * 1024 * 1024;
|
|
+// Electron's dom_storage_limits.patch increased this value from 10MiB to 100MiB
|
|
+const size_t kPerStorageAreaQuota = 100 * 1024 * 1024;
|
|
+
|
|
const size_t kPerStorageAreaOverQuotaAllowance = 100 * 1024;
|
|
|
|
} // namespace storage
|
|
diff --git a/third_party/blink/public/mojom/dom_storage/storage_area.mojom b/third_party/blink/public/mojom/dom_storage/storage_area.mojom
|
|
index 5902d8217c1b98d182f68f4199be4830c6177e68..2517c37be979cfe25ec8592cdbf8e53bab100c42 100644
|
|
--- a/third_party/blink/public/mojom/dom_storage/storage_area.mojom
|
|
+++ b/third_party/blink/public/mojom/dom_storage/storage_area.mojom
|
|
@@ -50,7 +50,8 @@ struct KeyValue {
|
|
interface StorageArea {
|
|
// The quota for each storage area.
|
|
// This value is enforced in renderer processes and the browser process.
|
|
- const uint32 kPerStorageAreaQuota = 10485760; // 10 MiB
|
|
+ // Electron's dom_storage_limits.patch increased this value from 10MiB to 100MiB
|
|
+ const uint32 kPerStorageAreaQuota = 104857600; // 100 MiB
|
|
|
|
// In the browser process we allow some overage to
|
|
// accommodate concurrent writes from different renderers
|