polyfill for array.fill

This commit is contained in:
ansuz 2017-08-29 11:49:10 +02:00
parent 26dea043fb
commit 181a19a9a0
2 changed files with 23 additions and 5 deletions

View File

@ -11,6 +11,16 @@ define([
};
}
// file encryption/decryption won't work if you don't have Array.fill
if (typeof(Array.prototype.fill) !== 'function') {
Array.prototype.fill = function (x) { // CRYPTPAD_SHIM
var i = 0;
var l = this.length;
for (;i < l; i++) { this[i] = x; }
return this;
};
}
var failStore = function () {
console.error(new Error('wut'));
require(['jquery'], function ($) {

View File

@ -209,15 +209,18 @@ define([
common.isFeedbackAllowed = function () {
try {
if (!getStore().getProxy().proxy.allowUserFeedback) { return; }
if (!getStore().getProxy().proxy.allowUserFeedback) { return false; }
return true;
} catch (e) { return void console.error(e); }
} catch (e) {
console.error(e);
return false;
}
};
var feedback = common.feedback = function (action, force) {
if (!action) { return; }
if (force !== true) {
if (!action) { return; }
try {
if (!getStore().getProxy().proxy.allowUserFeedback) { return; }
if (!common.isFeedbackAllowed()) { return; }
} catch (e) { return void console.error(e); }
}
@ -1951,10 +1954,15 @@ define([
feedback("NO_PROXIES");
}
if (/CRYPTPAD_SHIM/.test(Array.isArray.toString())) {
var shimPattern = /CRYPTPAD_SHIM/;
if (shimPattern.test(Array.isArray.toString())) {
feedback("NO_ISARRAY");
}
if (shimPattern.test(Array.prototype.fill.toString())) {
feedback("NO_ARRAYFILL");
}
common.reportScreenDimensions();
common.reportLanguage();