- Your browser does not support any of the filesytems required by Remix.
+ Your browser does not support any of the filesystems required by Remix.
Either change the settings in your browser or use a supported browser.
: null}
{error ?
@@ -127,4 +127,4 @@ const logo =
-
\ No newline at end of file
+
diff --git a/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx b/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx
index 1b947d75dd..eee8d64165 100644
--- a/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx
+++ b/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx
@@ -14,8 +14,10 @@ const profile = {
export class PermissionHandlerPlugin extends Plugin {
permissions: any
currentVersion: number
+ fallbackMemory: boolean
constructor() {
super(profile)
+ this.fallbackMemory = false
this.permissions = this._getFromLocal()
this.currentVersion = 1
// here we remove the old permissions saved before adding 'permissionVersion'
@@ -27,13 +29,19 @@ export class PermissionHandlerPlugin extends Plugin {
}
_getFromLocal() {
+ if (this.fallbackMemory) return this.permissions
const permission = localStorage.getItem('plugins/permissions')
return permission ? JSON.parse(permission) : {}
}
persistPermissions() {
const permissions = JSON.stringify(this.permissions)
- localStorage.setItem('plugins/permissions', permissions)
+ try {
+ localStorage.setItem('plugins/permissions', permissions)
+ } catch (e) {
+ this.fallbackMemory = true
+ console.log(e)
+ }
}
switchMode (from: Profile, to: Profile, method: string, set: boolean) {
@@ -123,4 +131,4 @@ export class PermissionHandlerPlugin extends Plugin {
}
})
}
-}
\ No newline at end of file
+}