mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-22 16:18:08 +02:00
Prevent adding invalid values in CFFDict_setByKey
(bug 1068432)
In the font in question, there are a couple of `topDict` entries that have invalid values (`0xF 0xF`, i.e. just eof markers without any actual numbers). This causes the `parseFloatOperand` function, inside `CFFParser_parseDict`, to return `NaN`. Currently we pass this broken font onto the browser, which OTS unsurprisingly rejects. Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1068432.
This commit is contained in:
parent
8b605b6980
commit
c9b6de3b16
5 changed files with 22 additions and 0 deletions
|
@ -995,6 +995,11 @@ var CFFDict = (function CFFDictClosure() {
|
|||
// remove the array wrapping these types of values
|
||||
if (type === 'num' || type === 'sid' || type === 'offset') {
|
||||
value = value[0];
|
||||
// Ignore invalid values (fixes bug 1068432).
|
||||
if (isNaN(value)) {
|
||||
warn('Invalid CFFDict value: ' + value + ', for key: ' + key + '.');
|
||||
return true;
|
||||
}
|
||||
}
|
||||
this.values[key] = value;
|
||||
return true;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue