electron/spec
Jacob a7c2f79a94 fix: prevent silent failure when DOM storage quota exceeded (#20899)
* test: update DOM storage quota limits test

* fix: update dom_storage_limits.patch (fixes #13465)

The previous version of this patch did not include
changes required to circumvent the quota enforcement
performed by StorageAreaImpl. Consequently when
the quota was exceeded, things still "appeared to
work" at first but then would later fail silently.
That is, the cache would be updated but the backing
store would not.

This could be fixed by disabling the code below
(from `content/browser/dom_storage/storage_area_impl.cc`)
```
  // Only check quota if the size is increasing, this allows
  // shrinking changes to pre-existing maps that are over budget.
  if (new_item_size > old_item_size && new_storage_used > max_size_) {
    if (map_state_ == MapState::LOADED_KEYS_ONLY) {
      receivers_.ReportBadMessage(
          "The quota in browser cannot exceed when there is only one "
          "renderer.");
    } else {
      std::move(callback).Run(false);
    }
    return;
  }
```

However, since this seems to have some unintended side-effects
(see updated notes in dom_storage_limits.patch) it seems
more prudent to simply increase the quota to a larger
yet still reasonable size rather than attempt to circumvent
the storage quota altogether.
2019-11-22 11:35:54 -08:00
..
configs ci: run more Chromium unit tests (#15363) 2018-10-25 14:28:50 -04:00
fixtures test: remove a bunch of usage of the remote module (#21119) 2019-11-14 14:09:03 -08:00
static build: speedy tests on circle by splitting the test files into multiple jobs (#21015) 2019-11-06 16:15:55 -08:00
ts-smoke chore: remove deprecated <webview>.getWebContents() (#20986) 2019-11-08 15:46:35 -05:00
.eslintrc chore: replace standard with eslint-config-standard and add custom rules (#14636) 2018-09-16 03:51:23 +10:00
api-clipboard-spec.js chore: update to standard 12 2018-09-14 14:57:01 +10:00
api-native-image-spec.js build: speedy tests on circle by splitting the test files into multiple jobs (#21015) 2019-11-06 16:15:55 -08:00
api-process-spec.js test: remove 'remote' usage from process tests (#20418) 2019-10-04 13:58:44 -07:00
api-remote-spec.js test: remove a bunch of usage of the remote module (#21119) 2019-11-14 14:09:03 -08:00
api-shell-spec.js build: speedy tests on circle by splitting the test files into multiple jobs (#21015) 2019-11-06 16:15:55 -08:00
api-web-frame-spec.js build: speedy tests on circle by splitting the test files into multiple jobs (#21015) 2019-11-06 16:15:55 -08:00
asar-spec.js build: speedy tests on circle by splitting the test files into multiple jobs (#21015) 2019-11-06 16:15:55 -08:00
BUILD.gn ci: run unittests on clean Chromium (#15125) 2018-10-22 16:12:19 -04:00
chromium-spec.js fix: prevent silent failure when DOM storage quota exceeded (#20899) 2019-11-22 11:35:54 -08:00
events-helpers.js fix: we can not use ts-node apaprently 2019-03-14 13:39:53 -07:00
expect-helpers.js chore: finish replacing assert with expect in tests (#18215) 2019-05-20 12:04:18 -05:00
node-spec.js build: speedy tests on circle by splitting the test files into multiple jobs (#21015) 2019-11-06 16:15:55 -08:00
package.json chore: bump chromium to e049d599a8332b9b2785b0178be74 (master) (#20314) 2019-10-18 12:57:34 -07:00
spec-helpers.js build: add enable_remote_module build flag (#19821) 2019-09-18 09:52:06 -07:00
webview-spec.js spec: skip flaky <webview>.capturePage() test on Windows (#21175) 2019-11-19 12:57:35 -05:00
yarn.lock chore: bump chromium to e049d599a8332b9b2785b0178be74 (master) (#20314) 2019-10-18 12:57:34 -07:00