1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-19 22:58:07 +02:00
pdf.js/src
Jonas Jenwald c4c7216171 Improve memory usage around the BasePdfManager.docBaseUrl parameter (PR 7689 follow-up)
While there is nothing *outright* wrong with the existing implementation, it can however lead to increased memory usage in one particular case (that I completely overlooked when implementing this):
For "data:"-URLs, which by definition contains the entire PDF document and can thus be arbitrarily large, we obviously want to avoid sending, storing, and/or logging the "raw" docBaseUrl in that case.

To address this, this patch makes the following changes:
 - Ignore any non-string in the `docBaseUrl` option passed to `getDocument`, since those are unsupported anyway, already on the main-thread.

 - Ignore "data:"-URLs in the `docBaseUrl` option passed to `getDocument`, to avoid having to send what could potentially be a *very* long string to the worker-thread.

 - Parse the `docBaseUrl` option *directly* in the `BasePdfManager`-constructors, on the worker-thread, to avoid having to store the "raw" docBaseUrl in the first place.
2021-03-17 15:48:24 +01:00
..
core Improve memory usage around the BasePdfManager.docBaseUrl parameter (PR 7689 follow-up) 2021-03-17 15:48:24 +01:00
display Improve memory usage around the BasePdfManager.docBaseUrl parameter (PR 7689 follow-up) 2021-03-17 15:48:24 +01:00
images Vectorize the logo. 2012-10-29 14:08:52 -04:00
scripting_api Merge pull request #13015 from calixteman/avoid_dl 2021-03-11 08:43:49 -08:00
shared Enable the ESLint no-var rule globally 2021-03-13 16:12:53 +01:00
doc_helper.js [api-major] Completely remove the global PDFJS object 2018-03-01 18:13:27 +01:00
interfaces.js Use ESLint to ensure that exports are sorted alphabetically 2021-01-09 20:37:51 +01:00
license_header.js Update the year in the license_header files 2021-02-11 17:52:26 +01:00
license_header_libre.js Update the year in the license_header files 2021-02-11 17:52:26 +01:00
pdf.image_decoders.js Use ESLint to ensure that exports are sorted alphabetically 2021-01-09 20:37:51 +01:00
pdf.js Move the getPdfFilenameFromUrl helper function from web/ui_utils.js and into src/display/display_utils.js 2021-03-17 15:48:24 +01:00
pdf.sandbox.external.js Update the events, used with scripting, to use lower-case names and avoid using DOM events internally in the viewer 2020-12-18 22:10:32 +01:00
pdf.sandbox.js JS - QuickJS sandbox initialization must be the last evaluated string (#12914) 2021-01-26 14:56:01 +01:00
pdf.scripting.js Tweak the pdf.scripting.js bundling, to improve overall consistency 2020-10-25 16:36:56 +01:00
pdf.worker.entry.js Update the year in the license_header files 2021-02-11 17:52:26 +01:00
pdf.worker.js Convert the src/pdf.js and src/pdf.worker.js files to use standard import/export statements 2020-05-20 13:18:23 +02:00
worker_loader.js Update Prettier to version 2.0 2020-04-14 12:28:14 +02:00