jenkins-bot has submitted this change and it was merged.
Change subject: Catch exceptions thrown by localStorage.getItem
......................................................................
Catch exceptions thrown by localStorage.getItem
Bug: T94695
Change-Id: I7fd7c4776a55de24d702babb291faf3208c8d0af
---
M resources/mmv/mmv.Config.js
M resources/mmv/mmv.head.js
M resources/mmv/ui/mmv.ui.metadataPanelScroller.js
3 files changed, 19 insertions(+), 7 deletions(-)
Approvals:
Gergő Tisza: Looks good to me, approved
jenkins-bot: Verified
diff --git a/resources/mmv/mmv.Config.js b/resources/mmv/mmv.Config.js
index 3a87b16..de5dbc7 100644
--- a/resources/mmv/mmv.Config.js
+++ b/resources/mmv/mmv.Config.js
@@ -65,7 +65,11 @@
CP.getFromLocalStorage = function ( key, fallback ) {
var value = null;
if ( this.localStorage ) {
- value = this.localStorage.getItem( key );
+ try {
+ value = this.localStorage.getItem( key );
+ } catch ( e ) {
+ mw.log( 'Failed to fetch item ' + key + ' from
localStorage', e );
+ }
}
if ( value === null && fallback !== undefined ) {
value = fallback;
diff --git a/resources/mmv/mmv.head.js b/resources/mmv/mmv.head.js
index 394f647..5a30471 100644
--- a/resources/mmv/mmv.head.js
+++ b/resources/mmv/mmv.head.js
@@ -25,11 +25,15 @@
// If the user disabled MediaViewer in his preferences, we do not set
up click handling.
// This is loaded before user JS so we cannot check wgMediaViewer.
- if (
- mw.config.get( 'wgMediaViewerOnClick' ) !== true
- || mw.user.isAnon() && window.localStorage &&
localStorage.getItem( 'wgMediaViewerOnClick' ) === false
- ) {
- return;
+ try {
+ if (
+ mw.config.get( 'wgMediaViewerOnClick' ) !== true
+ || mw.user.isAnon() && window.localStorage &&
localStorage.getItem( 'wgMediaViewerOnClick' ) === false
+ ) {
+ return;
+ }
+ } catch ( e ) { // localStorage.getItem can throw exceptions
+ mw.log( 'Could not check value of wgMediaViewerOnClick in
localStorage' );
}
$document.on( 'click.mmv-head', 'a.image', function ( e ) {
diff --git a/resources/mmv/ui/mmv.ui.metadataPanelScroller.js
b/resources/mmv/ui/mmv.ui.metadataPanelScroller.js
index 6a07865..481115c 100644
--- a/resources/mmv/ui/mmv.ui.metadataPanelScroller.js
+++ b/resources/mmv/ui/mmv.ui.metadataPanelScroller.js
@@ -138,7 +138,11 @@
MPSP.initialize = function () {
- this.hasOpenedMetadata = !this.localStorage ||
this.localStorage.getItem( 'mmv.hasOpenedMetadata' );
+ try {
+ this.hasOpenedMetadata = !this.localStorage ||
this.localStorage.getItem( 'mmv.hasOpenedMetadata' );
+ } catch ( e ) { // localStorage.getItem can throw exceptions
+ this.hasOpenedMetadata = true;
+ }
};
/**
--
To view, visit https://gerrit.wikimedia.org/r/201447
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I7fd7c4776a55de24d702babb291faf3208c8d0af
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MultimediaViewer
Gerrit-Branch: master
Gerrit-Owner: Gilles <[email protected]>
Gerrit-Reviewer: Gergő Tisza <[email protected]>
Gerrit-Reviewer: MarkTraceur <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits