1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-10-06 09:37:12 +02:00
uBlock/src/js
Raymond Hill c098eb8625
Fix potential corruption when reading serialized data
Corrpution would occur when reading back serialized data which
contained multiple references to same instance of an object.

The issue could manifest when reading cache storage-related
data from the browser storage API, since the serializer is not
used when reading from indexedDB. Private/incognito mode
fall back on using browser storage API as cache storage.

Off the top of my head, I think the following conditions all
together could result in high likelihood of malfunction caused
by improperly deserializing data at launch time:

- Load from a selfie
- Selfie created after uBO ran for a while
- Selfie loaded from browser storage API (not the case by
  default)

Possibly related to reports of uBO malfunctioning:
https://github.com/uBlockOrigin/uBlock-issues/issues/3217#event-12686416838
2024-05-02 20:21:47 -04:00
..
codemirror Fix various quirks with "My filters" trust-related checkbox 2024-03-19 10:59:15 -04:00
scriptlets Adjust element picker visuals 2024-04-22 06:08:49 -04:00
wasm Change official description in source code top comment 2023-12-04 12:10:34 -05:00
1p-filters.js Fix various quirks with "My filters" trust-related checkbox 2024-03-19 10:59:15 -04:00
3p-filters.js Fix regression breaking import of file:// lists 2024-04-08 20:48:58 -04:00
about.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
advanced-settings.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
asset-viewer.js Support maximizing editor to viewport size 2024-03-12 11:25:50 -04:00
assets.js Make asset updater compatible with non-persistent background page 2024-03-01 19:52:55 -05:00
background.js Properly manage cache storage regarding managed user filters 2024-03-23 13:28:18 -04:00
base64-custom.js Redesign cache storage 2024-02-26 16:50:11 -05:00
benchmarks.js Add more benchmark tools to devtool page 2024-03-01 17:26:21 -05:00
biditrie.js Redesign cache storage 2024-02-26 16:50:11 -05:00
broadcast.js Fix bad eslint rule + minor code review 2024-03-22 14:46:57 -04:00
cachestorage.js Add more console logging for cache storage code 2024-05-02 20:15:46 -04:00
click2load.js Output scriptlet logging information to the logger 2024-01-25 12:20:38 -05:00
cloud-ui.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
code-viewer.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
commands.js Prevent access to picker when "My filters" is not enabled 2024-01-16 08:31:46 -05:00
console.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
contentscript-extra.js Fix eslint warnings 2024-03-31 13:35:11 -04:00
contentscript.js Fix eslint warnings 2024-03-31 13:35:11 -04:00
contextmenu.js Prevent access to picker when "My filters" is not enabled 2024-01-16 08:31:46 -05:00
cosmetic-filtering.js Rename module-scoped classes for better distinction in profiling data 2024-03-02 09:41:12 -05:00
dashboard-common.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
dashboard.js Add checkboxes to "My filters" pane 2024-03-11 11:39:31 -04:00
devtools.js Fix disabled state of new benchmark buttons 2024-03-03 13:46:29 -05:00
diff-updater.js Add to error message 2023-12-26 11:32:08 -05:00
document-blocked.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
dom-inspector.js [firefox] Fix DOM inspector being broken in private window 2023-12-06 21:16:48 -05:00
dom.js Support aborting "Pick" mode in element picker 2024-03-03 20:08:15 -05:00
dyna-rules.js Add checkboxes to "My filters" pane 2024-03-11 11:39:31 -04:00
dynamic-net-filtering.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
epicker-ui.js Improve suggested candidate filters in element picker 2024-04-10 10:28:11 -04:00
fa-icons.js Add a console pane to the logger 2024-04-10 11:27:40 -04:00
filtering-context.js Discard repeating adjacent entries in the logger 2024-01-26 09:24:10 -05:00
filtering-engines.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
hnswitches.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
hntrie.js Redesign cache storage 2024-02-26 16:50:11 -05:00
html-filtering.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
httpheader-filtering.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
i18n.js Fixed Belgian and Nepali flags for Windows Chromium users (#3914) 2024-03-17 10:42:20 -04:00
logger-ui-inspector.js Add a console pane to the logger 2024-04-10 11:27:40 -04:00
logger-ui.js Open details pane only when clicking non-interactive elements 2024-04-11 11:12:37 -04:00
logger.js Discard repeating adjacent entries in the logger 2024-01-26 09:24:10 -05:00
lz4.js Remove "Purge all caches" button from "Filter lists" pane 2023-12-13 21:01:51 -05:00
messaging.js Rename scuo- to s14e- 2024-03-11 15:40:50 -04:00
mrucache.js Split scriptlet filtering engine into lo- and hi-level classes 2023-12-21 10:48:01 -05:00
pagestore.js Do not block large media resources when loaded as top-level document 2024-03-26 12:44:08 -04:00
popup-fenix.js Fix popup panel when embedded in logger 2024-03-17 09:36:39 -04:00
redirect-engine.js Various fine tuning code of recent commits 2024-02-28 13:32:24 -05:00
redirect-resources.js Remove obsolete web accessible resources 2023-12-08 12:06:34 -05:00
reverselookup-worker.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
reverselookup.js Redesign cache storage 2024-02-26 16:50:11 -05:00
s14e-serializer.js Fix potential corruption when reading serialized data 2024-05-02 20:21:47 -04:00
scriptlet-filtering-core.js Redesign cache storage 2024-02-26 16:50:11 -05:00
scriptlet-filtering.js Minor code review 2024-04-09 20:05:53 -04:00
settings.js Add checkboxes to "My filters" pane 2024-03-11 11:39:31 -04:00
start.js Ensure reading last data written 2024-04-13 16:03:17 -04:00
static-dnr-filtering.js [mv3] Fix conversion of :xpath procedural filters 2024-01-22 10:57:48 -05:00
static-ext-filtering-db.js Redesign cache storage 2024-02-26 16:50:11 -05:00
static-ext-filtering.js Redesign cache storage 2024-02-26 16:50:11 -05:00
static-filtering-io.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
static-filtering-parser.js Add procedural operator :shadow() -- status is experimental 2024-03-13 14:28:53 -04:00
static-net-filtering.js Rename module-scoped classes for better distinction in profiling data 2024-03-02 09:41:12 -05:00
storage.js Ensure reading last data written 2024-04-13 16:03:17 -04:00
support.js Remove "Purge all caches" button from "Filter lists" pane 2023-12-13 21:01:51 -05:00
tab.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
tasks.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
text-encode.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
text-utils.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
theme.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
traffic.js Do not block large media resources when loaded as top-level document 2024-03-26 12:44:08 -04:00
ublock.js Unregister all scriptlets when disabling uBO on a specific site 2024-01-19 11:00:07 -05:00
uri-utils.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
url-net-filtering.js Change official description in source code top comment 2023-12-04 12:10:34 -05:00
utils.js Split scriptlet filtering engine into lo- and hi-level classes 2023-12-21 10:48:01 -05:00
whitelist.js Add checkboxes to "My filters" pane 2024-03-11 11:39:31 -04:00