0
Files
src/pdf
Daniel Hosseinian c1b0f7a47a [unseasoned-pdf] Enter embedder's V8 isolate in PDFium callbacks
Chromium, which is PDFium's embedder, provides callbacks to the latter.
It is possible for PDFium to enter its own isolate before calling one
of these callbacks, further creating the possibility of Chromium
calling v8::Isolate::GetCurrent() and getting PDFium's isolate.

Capture Chromium's isolate prior to passing the callbacks to PDFium,
and enter it within each of the callbacks.

Fixed: 1252212
Change-Id: I1f5036ca1e52a2ae67745795501828cf8659f758
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3183825
Auto-Submit: Daniel Hosseinian <dhoss@chromium.org>
Reviewed-by: Adam Klein <adamk@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/main@{#928423}
2021-10-05 23:49:03 +00:00
..
2021-09-28 06:50:47 +00:00
2021-09-28 06:50:47 +00:00

//pdf contains the PDF plugin, its Blink-based replacement, as well as PDF utility functions that leverage PDFium. It can use low-level components that live below the content layer, as well as other foundational code like //printing. It should not use //content or anything in //components that lives above the content layer. Code that lives above the content layer should live in //components/pdf, or in the embedder. All the code here should run in sandboxed child processes.

TODO(crbug.com/1220865): Remove existing //content dependencies.