diff --git a/src/display/canvas.js b/src/display/canvas.js index 8e8deda9b..033068719 100644 --- a/src/display/canvas.js +++ b/src/display/canvas.js @@ -970,6 +970,9 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { this.current = this.stateStack.pop(); this.ctx.restore(); + // Ensure that the clipping path is reset (fixes issue6413.pdf). + this.pendingClip = null; + this.cachedGetSinglePixelWidth = null; } }, diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index b1905194f..536aca6eb 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -24,6 +24,7 @@ !close-path-bug.pdf !issue2948.pdf !issue6231_1.pdf +!issue6413.pdf !issue4630.pdf !issue4909.pdf !issue5202.pdf diff --git a/test/pdfs/issue6413.pdf b/test/pdfs/issue6413.pdf new file mode 100644 index 000000000..dfd3b7f80 Binary files /dev/null and b/test/pdfs/issue6413.pdf differ diff --git a/test/test_manifest.json b/test/test_manifest.json index 7b3415161..98140bc81 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -1079,6 +1079,13 @@ "link": true, "type": "eq" }, + { "id": "issue6413", + "file": "pdfs/issue6413.pdf", + "md5": "08926ac7a46e27a4abbb31256b3a7b29", + "rounds": 1, + "link": false, + "type": "eq" + }, { "id": "issue1685", "file": "pdfs/issue1685.pdf", "md5": "b22c3741e6bd0e613d3eb3325ad31f7d",