ol 9.2.5-dev.1719506123639 → 9.2.5-dev.1719594762309

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ol",
3
- "version": "9.2.5-dev.1719506123639",
3
+ "version": "9.2.5-dev.1719594762309",
4
4
  "description": "OpenLayers mapping library",
5
5
  "keywords": [
6
6
  "map",
@@ -180,6 +180,11 @@ declare class WebGLVectorLayerRenderer extends WebGLLayerRenderer<any> {
180
180
  * @param {number} worldWidth the width of the worlds being rendered
181
181
  */
182
182
  renderWorlds(frameState: import("../../Map.js").FrameState, forHitDetection: boolean, startWorld: number, endWorld: number, worldWidth: number): void;
183
+ /**
184
+ * Will release a set of Webgl buffers
185
+ * @param {import('../../render/webgl/VectorStyleRenderer.js').WebGLBuffers} buffers Buffers
186
+ */
187
+ disposeBuffers(buffers: import("../../render/webgl/VectorStyleRenderer.js").WebGLBuffers): void;
183
188
  }
184
189
  import WebGLLayerRenderer from './Layer.js';
185
190
  //# sourceMappingURL=VectorLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VectorLayer.d.ts","sourceRoot":"","sources":["VectorLayer.js"],"names":[],"mappings":"AAmCA;;;;;;;;;;;;;EAKE;;0BAGW,OAAO,2CAA2C,EAAE,WAAW;;;;;;;;;WAM9D,WAAW,GAAC,KAAK,CAAC,WAAW,CAAC;;;;;;;;;;;AAP5C;;GAEG;AAEH;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH;IACE;;;OAGG;IACH,mBAHW,OAAO,sBAAsB,EAAE,OAAO,WACtC,OAAO,EAqFjB;IAvEC;;;OAGG;IACH,6BAAwD;IAExD;;;OAGG;IACH,yBAAqB;IAErB,wBAAyB;IAEzB,kDAAoC;IAEpC;;;;;;OAMG;IACH,0BAA0C;IAE1C,qBAAwB;IACxB,wBAAsC;IACtC,mBAA4B;IAE5B;;;OAGG;IACH,oCAAoD;IAEpD;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,wBAAyB;IAEzB;;;OAGG;IACH,iBAAkB;IAIlB;;OAEG;IACH,eAAsC;IAEtC;;;OAGG;IACH,8BAAkC;IAElC;;;OAGG;IACH,0BAA6B;IAG/B;;;OAGG;IACH,4BAqCC;IAED;;;OAGG;IACH,sBAIC;IAED;;OAEG;IACH,yBAMC;IAED,0BAMC;IASD;;;;OAIG;IACH,kCAGC;IAED;;;OAGG;IACH,oCAGC;IAED;;;OAGG;IACH,mCAGC;IAED;;OAEG;IACH,kCAEC;IAED;;;OAGG;IACH,uBAsBC;IAED;;;;OAIG;IACH,wBAHW,OAAO,cAAc,EAAE,UAAU,GAChC,WAAW,CA+BtB;IAoED;;;;;;;OAOG;IACH,yBANW,OAAO,cAAc,EAAE,UAAU,mBACjC,OAAO,cACP,MAAM,YACN,MAAM,cACN,MAAM,QAuChB;CAqDF;+BAjf8B,YAAY"}
1
+ {"version":3,"file":"VectorLayer.d.ts","sourceRoot":"","sources":["VectorLayer.js"],"names":[],"mappings":"AAmCA;;;;;;;;;;;;;EAKE;;0BAGW,OAAO,2CAA2C,EAAE,WAAW;;;;;;;;;WAM9D,WAAW,GAAC,KAAK,CAAC,WAAW,CAAC;;;;;;;;;;;AAP5C;;GAEG;AAEH;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH;IACE;;;OAGG;IACH,mBAHW,OAAO,sBAAsB,EAAE,OAAO,WACtC,OAAO,EAqFjB;IAvEC;;;OAGG;IACH,6BAAwD;IAExD;;;OAGG;IACH,yBAAqB;IAErB,wBAAyB;IAEzB,kDAAoC;IAEpC;;;;;;OAMG;IACH,0BAA0C;IAE1C,qBAAwB;IACxB,wBAAsC;IACtC,mBAA4B;IAE5B;;;OAGG;IACH,oCAAoD;IAEpD;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,wBAAyB;IAEzB;;;OAGG;IACH,iBAAkB;IAIlB;;OAEG;IACH,eAAsC;IAEtC;;;OAGG;IACH,8BAAkC;IAElC;;;OAGG;IACH,0BAA6B;IAG/B;;;OAGG;IACH,4BAqCC;IAED;;;OAGG;IACH,sBAIC;IAED;;OAEG;IACH,yBAMC;IAED,0BAMC;IASD;;;;OAIG;IACH,kCAGC;IAED;;;OAGG;IACH,oCAGC;IAED;;;OAGG;IACH,mCAGC;IAED;;OAEG;IACH,kCAEC;IAED;;;OAGG;IACH,uBAsBC;IAED;;;;OAIG;IACH,wBAHW,OAAO,cAAc,EAAE,UAAU,GAChC,WAAW,CA+BtB;IAuED;;;;;;;OAOG;IACH,yBANW,OAAO,cAAc,EAAE,UAAU,mBACjC,OAAO,cACP,MAAM,YACN,MAAM,cACN,MAAM,QAuChB;IAyCD;;;OAGG;IACH,wBAFW,OAAO,2CAA2C,EAAE,YAAY,QAkB1E;CAiBF;+BA7gB8B,YAAY"}
@@ -391,6 +391,9 @@ class WebGLVectorLayerRenderer extends WebGLLayerRenderer {
391
391
 
392
392
  const generatePromises = this.styleRenderers_.map((renderer, i) =>
393
393
  renderer.generateBuffers(this.batch_, transform).then((buffers) => {
394
+ if (this.buffers_[i]) {
395
+ this.disposeBuffers(this.buffers_[i]);
396
+ }
394
397
  this.buffers_[i] = buffers;
395
398
  }),
396
399
  );
@@ -491,10 +494,35 @@ class WebGLVectorLayerRenderer extends WebGLLayerRenderer {
491
494
  return undefined;
492
495
  }
493
496
 
497
+ /**
498
+ * Will release a set of Webgl buffers
499
+ * @param {import('../../render/webgl/VectorStyleRenderer.js').WebGLBuffers} buffers Buffers
500
+ */
501
+ disposeBuffers(buffers) {
502
+ if (buffers.pointBuffers) {
503
+ buffers.pointBuffers
504
+ .filter(Boolean)
505
+ .forEach((buffer) => this.helper.deleteBuffer(buffer));
506
+ }
507
+ if (buffers.lineStringBuffers) {
508
+ buffers.lineStringBuffers
509
+ .filter(Boolean)
510
+ .forEach((buffer) => this.helper.deleteBuffer(buffer));
511
+ }
512
+ if (buffers.polygonBuffers) {
513
+ buffers.polygonBuffers
514
+ .filter(Boolean)
515
+ .forEach((buffer) => this.helper.deleteBuffer(buffer));
516
+ }
517
+ }
518
+
494
519
  /**
495
520
  * Clean up.
496
521
  */
497
522
  disposeInternal() {
523
+ this.buffers_.forEach((buffers) => {
524
+ this.disposeBuffers(buffers);
525
+ });
498
526
  if (this.sourceListenKeys_) {
499
527
  this.sourceListenKeys_.forEach(function (key) {
500
528
  unlistenByKey(key);
package/util.js CHANGED
@@ -33,4 +33,4 @@ export function getUid(obj) {
33
33
  * OpenLayers version.
34
34
  * @type {string}
35
35
  */
36
- export const VERSION = '9.2.5-dev.1719506123639';
36
+ export const VERSION = '9.2.5-dev.1719594762309';