diff --git a/src/ol/render/canvas/replay.js b/src/ol/render/canvas/replay.js index 600d03242a..549d00d3fa 100644 --- a/src/ol/render/canvas/replay.js +++ b/src/ol/render/canvas/replay.js @@ -1210,8 +1210,10 @@ ol.render.canvas.PolygonReplay.prototype.drawFlatCoordinatess_ = function(flatCo for (i = 0, ii = ends.length; i < ii; ++i) { var end = ends[i]; var myBegin = this.coordinates.length; - var myEnd = this.appendFlatCoordinates( - flatCoordinates, offset, end, stride, true); + var myEnd = this.appendFlatCoordinates(flatCoordinates, offset, end, stride, + // Performance optimization: only close the ring when we do not have a + // stroke. Otherwise closePath() will take care of that. + !stroke); var moveToLineToInstruction = [ol.render.canvas.Instruction.MOVE_TO_LINE_TO, myBegin, myEnd]; this.instructions.push(moveToLineToInstruction);