From 8c2804145c336ec6e799b6e7adc119389b4acd82 Mon Sep 17 00:00:00 2001 From: Andreas Gal Date: Sat, 25 Jun 2011 00:17:28 -0400 Subject: [PATCH] hack around OOM problem due to broken pattern code --- pdf.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pdf.js b/pdf.js index 68a2597d3..d06d07e0e 100644 --- a/pdf.js +++ b/pdf.js @@ -3030,10 +3030,14 @@ var CanvasGraphics = (function() { // we want the canvas to be as large as the step size var botRight = applyMatrix([x0 + xstep, y0 + ystep], matrix); - var tmpCanvas = new this.ScratchCanvas( - Math.ceil(botRight[0] - topLeft[0]), // width - Math.ceil(botRight[1] - topLeft[1]) // height - ); + var width = botRight[0] - topLeft[0]; + var height = botRight[1] - topLeft[1]; + + // TODO: hack to avoid OOM, remove then pattern code is fixed + if (Math.abs(width) > 8192 || Math.abs(height) > 8192) + return false; + + var tmpCanvas = new this.ScratchCanvas(width, height); // set the new canvas element context as the graphics context var tmpCtx = tmpCanvas.getContext("2d");