Merge pull request #9306 from fredj/dispose_layer_renderer

Set the canvas size to 0 on dispose
This commit is contained in:
Frédéric Junod
2019-03-09 08:00:35 +01:00
committed by GitHub
3 changed files with 11 additions and 0 deletions

View File

@@ -143,6 +143,8 @@ class ExecutorGroup extends Disposable {
executors[key].disposeInternal();
}
}
const canvas = this.hitDetectionContext_.canvas;
canvas.width = canvas.height = 0;
super.disposeInternal();
}

View File

@@ -63,6 +63,14 @@ class CanvasLayerRenderer extends LayerRenderer {
canvas.className = this.getLayer().getClassName();
}
/**
* @inheritDoc
*/
disposeInternal() {
this.context.canvas.width = this.context.canvas.height = 0;
super.disposeInternal();
}
/**
* @param {CanvasRenderingContext2D} context Context.
* @param {import("../../PluggableMap.js").FrameState} frameState Frame state.

View File

@@ -152,6 +152,7 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
*/
disposeInternal() {
unlisten(labelCache, EventType.CLEAR, this.handleFontsChanged_, this);
this.overlayContext_.canvas.width = this.overlayContext_.canvas.height = 0;
super.disposeInternal();
}