Bug 879211: ignoring bad document outline reference

This commit is contained in:
Yury Delendik 2013-06-21 15:42:55 -05:00
parent ce218d021f
commit df6fd387df

View File

@ -244,6 +244,18 @@ var Catalog = (function CatalogClosure() {
return shadow(this, 'toplevelPagesDict', pagesObj);
},
get documentOutline() {
var obj = null;
try {
obj = this.readDocumentOutline();
} catch (ex) {
if (ex instanceof MissingDataException) {
throw ex;
}
warn('Unable to read document outline');
}
return shadow(this, 'documentOutline', obj);
},
readDocumentOutline: function Catalog_readDocumentOutline() {
var xref = this.xref;
var obj = this.catDict.get('Outlines');
var root = { items: [] };
@ -294,8 +306,7 @@ var Catalog = (function CatalogClosure() {
}
}
}
obj = root.items.length > 0 ? root.items : null;
return shadow(this, 'documentOutline', obj);
return root.items.length > 0 ? root.items : null;
},
get numPages() {
var obj = this.toplevelPagesDict.get('Count');