[go: up one dir, main page]

Page MenuHomePhabricator

JavaScript error every time when closing a fullscreen map
Closed, ResolvedPublic1 Estimated Story PointsBUG REPORT

Description

Every time I open and close the fullscreen map I see this in the JavaScript console:

jQuery.Deferred exception: Cannot read properties of undefined (reading '_leaflet_pos') TypeError: Cannot read properties of undefined (reading '_leaflet_pos')
    at getPosition (http://localhost/extensions/Kartographer/lib/external/mapbox/mapbox-lib.js?87f5a:5023:12)
    at NewClass._getMapPanePos (http://localhost/extensions/Kartographer/lib/external/mapbox/mapbox-lib.js?87f5a:7034:10)
    at NewClass._moved (http://localhost/extensions/Kartographer/lib/external/mapbox/mapbox-lib.js?87f5a:7038:18)
    at NewClass.getCenter (http://localhost/extensions/Kartographer/lib/external/mapbox/mapbox-lib.js?87f5a:6399:33)
    at http://localhost/load.php?debug=1&lang=en&modules=ext.kartographer.dialog%7Coojs-ui-core%2Coojs-ui-widgets%2Coojs-ui-windows%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui-widgets.icons%7Coojs-ui-windows.icons%7Coojs-ui.styles.icons-interactions%2Cicons-location%2Cindicators&skin=vector&version=ztntf:73:11
…

Can be reproduced in production, e.g.: https://de.wikivoyage.org/wiki/Paris/7._Arrondissement. The line of code that triggers this is the map.getCenter() call here: https://phabricator.wikimedia.org/diffusion/EKAR/browse/master/modules/dialog/index.js$69

A git bisect shows that the issue exists since https://gerrit.wikimedia.org/r/663866.

The best guess I have at the moment is that this code tries to copy center and zoom from the fullscreen map back to the mini map in the article, but does this to late. The fullscreen map object is still there but apparently half destroyed and can't tell it's center any more.

Steps to reproduce:

  • Use Chrome/Chromium
  • Expand a non-static map to fullscreen
  • Collapse the map using ESC

Event Timeline

Change 826951 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Kartographer@master] Don't destroy the fullscreen map to early

https://gerrit.wikimedia.org/r/826951

Change 826951 merged by jenkins-bot:

[mediawiki/extensions/Kartographer@master] Don't destroy the fullscreen map to early

https://gerrit.wikimedia.org/r/826951