From f1b88e76134808f36f16b9e53a2e9dd89b12c8fd Mon Sep 17 00:00:00 2001 From: David Lattimore Date: Fri, 9 Oct 2015 08:18:20 +1100 Subject: Various changes to JBig2 cache: - Makes the cache be per-document - Keys the cache on ObjNum and stream offset instead of keying on a pointer to the data (which can result in false cache hits). - Makes it so the cache is only used for the globals stream. - Reenable the cache. R=thestig@chromium.org BUG=pdfium:207 Review URL: https://codereview.chromium.org/1380243004 . --- core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'core/src/fpdfapi') diff --git a/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp b/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp index f1fbf41d6d..1e7f077d48 100644 --- a/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp +++ b/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp @@ -407,12 +407,10 @@ int CPDF_DIBSource::ContinueLoadDIBSource(IFX_Pause* pPause) { m_pGlobalStream->LoadAllData(pGlobals, FALSE); } } - ret = pJbig2Module->StartDecode( - m_pJbig2Context, m_Width, m_Height, m_pStreamAcc->GetData(), - m_pStreamAcc->GetSize(), - m_pGlobalStream ? m_pGlobalStream->GetData() : NULL, - m_pGlobalStream ? m_pGlobalStream->GetSize() : 0, - m_pCachedBitmap->GetBuffer(), m_pCachedBitmap->GetPitch(), pPause); + ret = pJbig2Module->StartDecode(m_pJbig2Context, m_pDocument, m_Width, + m_Height, m_pStreamAcc, m_pGlobalStream, + m_pCachedBitmap->GetBuffer(), + m_pCachedBitmap->GetPitch(), pPause); if (ret < 0) { m_pCachedBitmap.reset(); delete m_pGlobalStream; -- cgit v1.2.3