Merge pull request #381: cancel searches on control disposal

Complete the location lookup teardown wiring. Browser disposal and all 108 tracking checks pass.
This commit is contained in:
Sameh Khamis authored and GitHub committed 2026-09-12 15:53:44 -07:00
commit 8bcf1460fc
3 files changed
+5 -2

No files matched your search

+3
View File
@@ -13,6 +13,9 @@ of current runtime behavior, see [`docs/CURRENT-STATE.md`](docs/CURRENT-STATE.md
## [Unreleased]
- Cancel the active location lookup when its controls are disposed.
### Fixed
- GBFS rejects upstream redirects, caps streamed responses at 5 MiB, and keeps
+1 -1
View File
@@ -2513,7 +2513,7 @@ Only valid answers and definitive misses enter bounded caches; malformed replies
HTTP refusals and outages remain retryable. Searches share a 12-second total
deadline, with Photon requests capped at six seconds each. Caller/application
cancellation stops retries and late cache writes. Replacing a location search
cancels the previous lookup. Photon uses a soft proximity bias, up to five
cancels the previous lookup; disposing its controls cancels the active lookup. Photon uses a soft proximity bias, up to five
candidates, and an unbiased retry for name mismatches. Invalid/wrapped bounds
are omitted rather than framing the wrong part of the globe.
+1 -1
View File
@@ -4236,7 +4236,6 @@ export class StyleManager {
};
if (panelId === 'control-panel') {
this._cancelMapSourceFocus?.();
this._locationSearchController?.abort();
this._cancelMapSourceFocus = cancelMapSourceFocus;
}
@@ -10319,6 +10318,7 @@ export class StyleManager {
this._globalStatusNotice = null;
if (this._globalLoadingStatus) this._globalLoadingStatus.hidden = true;
this._disposed = true;
this._locationSearchController?.abort();
this._cancelMapSourceFocus?.();
// Revoke persistence/hash authority before teardown can emit manager changes.
this._layerStateCoordinator?.destroy();