Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion test/modules/mapbox/mapbox-gl-mock/map.ts
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,11 @@ export default class Map extends Evented {
}

_render() {
this.style.render();
try {
this.style.render();
} catch (e) {
this._renderError = e;
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale _renderError never cleared between render calls

Low Severity

_renderError is only ever assigned on failure and never reset to null/undefined at the start of _render(). If _render() is called multiple times (e.g., via multiple triggerRepaint() calls queued by Deck's _customRender), an error from an earlier render persists even if a later render succeeds. The t.notOk(_renderError) assertion in the render handler would then report a stale error, producing a misleading or false test failure. Adding this._renderError = null before the try-catch would ensure the value always reflects the most recent render attempt.

Fix in Cursor Fix in Web

this.fire(new Event('render'));
}

Expand Down
2 changes: 2 additions & 0 deletions test/modules/mapbox/mapbox-layer.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,7 @@ test('MapboxLayer#external Deck multiple views supplied', t => {
map.addLayer(layerDefaultView);

map.on('render', () => {
t.notOk((map as any)._renderError, 'render should not throw');
t.deepEqual(
drawLog,
[
Expand Down Expand Up @@ -184,6 +185,7 @@ test('MapboxLayer#external Deck custom views', t => {

map.addLayer(new MapboxLayer({id: 'scatterplot'}));
map.on('render', () => {
t.notOk((map as any)._renderError, 'render should not throw');
t.deepEqual(
drawLog,
[
Expand Down
Loading