Browse Source

Fix localStorage feature detection. Close #1099

Artur Adib 13 years ago
parent
commit
5c62f99fee
  1. 11
      web/viewer.js

11
web/viewer.js

@ -66,12 +66,12 @@ var RenderingQueue = (function RenderingQueueClosure() { @@ -66,12 +66,12 @@ var RenderingQueue = (function RenderingQueueClosure() {
// If not, we use FUEL in FF
var Settings = (function SettingsClosure() {
var isLocalStorageEnabled = (function localStorageEnabledTest() {
// Feature test as per http://diveintohtml5.info/storage.html
try {
localStorage;
return 'localStorage' in window && window['localStorage'] !== null;
} catch (e) {
return false;
}
return true;
})();
var extPrefix = 'extensions.uriloader@pdf.js';
var isExtension = location.protocol == 'chrome:' && !isLocalStorageEnabled;
@ -119,8 +119,9 @@ var Settings = (function SettingsClosure() { @@ -119,8 +119,9 @@ var Settings = (function SettingsClosure() {
Settings.prototype = {
set: function settingsSet(name, val) {
if (inPrivateBrowsing)
if (inPrivateBrowsing || !('file' in this))
return false;
var file = this.file;
file[name] = val;
if (isExtension)
@ -131,9 +132,9 @@ var Settings = (function SettingsClosure() { @@ -131,9 +132,9 @@ var Settings = (function SettingsClosure() {
},
get: function settingsGet(name, defaultValue) {
if (inPrivateBrowsing)
if (inPrivateBrowsing || !('file' in this))
return defaultValue;
else
return this.file[name] || defaultValue;
}
};

Loading…
Cancel
Save