Merge pull request #16368 from Snuffleupagus/rm-GlobalImageCache-addPageIndex

Inline the `addPageIndex` method in `GlobalImageCache.shouldCache`
This commit is contained in:
Jonas Jenwald 2023-05-04 12:09:04 +02:00 committed by GitHub
commit 667085ee33
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 19 deletions

View File

@ -822,10 +822,9 @@ class PartialEvaluator {
if (imageRef) {
this._regionalImageCache.set(/* name = */ null, imageRef, cacheData);
assert(!isInline, "Cannot cache an inline image globally.");
this.globalImageCache.addPageIndex(imageRef, this.pageIndex);
if (cacheGlobally) {
assert(!isInline, "Cannot cache an inline image globally.");
this.globalImageCache.setData(imageRef, {
objId,
fn: OPS.paintImageXObject,

View File

@ -208,27 +208,20 @@ class GlobalImageCache {
}
shouldCache(ref, pageIndex) {
const pageIndexSet = this._refCache.get(ref);
const numPages = pageIndexSet
? pageIndexSet.size + (pageIndexSet.has(pageIndex) ? 0 : 1)
: 1;
if (numPages < GlobalImageCache.NUM_PAGES_THRESHOLD) {
return false;
}
if (!this._imageCache.has(ref) && this._cacheLimitReached) {
return false;
}
return true;
}
addPageIndex(ref, pageIndex) {
let pageIndexSet = this._refCache.get(ref);
if (!pageIndexSet) {
pageIndexSet = new Set();
this._refCache.put(ref, pageIndexSet);
}
pageIndexSet.add(pageIndex);
if (pageIndexSet.size < GlobalImageCache.NUM_PAGES_THRESHOLD) {
return false;
}
if (!this._imageCache.has(ref) && this._cacheLimitReached) {
return false;
}
return true;
}
/**
@ -266,7 +259,7 @@ class GlobalImageCache {
setData(ref, data) {
if (!this._refCache.has(ref)) {
throw new Error(
'GlobalImageCache.setData - expected "addPageIndex" to have been called.'
'GlobalImageCache.setData - expected "shouldCache" to have been called.'
);
}
if (this._imageCache.has(ref)) {