1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-20 15:18:08 +02:00
pdf.js/test
Jonas Jenwald 90d19de935 Catch errors and continue parsing in parseCMap (issue 7492)
After PR 7039, the PDF file in issue 7492 no longer renders at all, but note that text selection wasn't working correctly previously.

The problem with the PDF file in issue 7492 is that the `cMap`, in the `toUnicode` entry in the font, contains an invalid name:
```
/CMapName /-usr-share-fonts-truetype-Panton-Panton Family-Fontfabric - Panton.otf,000-UTF16 def
```
When we parse that line, things obviously break because there are spaces present in the wrong places.
To avoid that issue, the patch simply lets `parseCMap` continue when errors are encountered, to try and recover usable data. Note that by not aborting immediatly when an error is encountered, we are also able to fix the text selection.

Obviously, it could be argued that we should just immediatly reject a corrupt `cMap`. But given that they usually are correct, it seems that trying to recover as much data as possible from corrupt one can only be a good thing for both glyph mapping and text selection.

Fixes 7492.
2016-07-18 16:39:56 +02:00
..
chromium Add opt-out telemetry to the Chrome extension 2016-06-03 20:36:57 +02:00
features trivial spelling fixes 2016-07-17 14:33:41 +02:00
font Updates Jasmine version. 2016-03-29 09:34:13 -05:00
pdfs Catch errors and continue parsing in parseCMap (issue 7492) 2016-07-18 16:39:56 +02:00
resources Remove 'use strict'; causing failure and unused prefs. 2016-01-14 13:23:48 -08:00
stats cleaned whitespace 2015-02-17 11:07:37 -05:00
ttx Update fonttools location and version (issue 6223) 2015-07-17 12:51:09 +02:00
unit Add a getAttachments unit-test for a PDF file that actually contains attachments 2016-07-02 13:13:30 +02:00
.gitignore Ignore test snapshots directory. 2013-03-15 11:24:08 -07:00
annotation_layer_test.css Merge pull request #6807 from timvandermeij/popup-annotation-hidden 2015-12-28 22:58:41 +01:00
downloadutils.js Uses editorconfig to maintain consistent coding styles 2015-11-14 07:32:18 +05:30
driver.js Remove combineUrl and replace it with new URL. 2016-04-15 21:33:10 +05:30
test.js Allow unit-tests to use linked PDF files, by having the unittest command download unavailable ones (issue 7117) 2016-03-27 13:17:55 +02:00
test_manifest.json Catch errors and continue parsing in parseCMap (issue 7492) 2016-07-18 16:39:56 +02:00
test_slave.html Move all PDFJS.xxx settings into display/global. 2016-04-07 13:46:07 -05:00
testutils.js Uses editorconfig to maintain consistent coding styles 2015-11-14 07:32:18 +05:30
text_layer_test.css Better "text" testing. 2015-11-19 11:03:52 -06:00
webbrowser.js Uses editorconfig to maintain consistent coding styles 2015-11-14 07:32:18 +05:30
webserver.js Uses editorconfig to maintain consistent coding styles 2015-11-14 07:32:18 +05:30