Browse Source

fix: reset blacklist after options initialization

close #182
Gerald 8 years ago
parent
commit
207e09d334
2 changed files with 4 additions and 2 deletions
  1. 2 0
      src/background/app.js
  2. 2 2
      src/background/utils/tester.js

+ 2 - 0
src/background/app.js

@@ -16,6 +16,7 @@ import {
   getScriptByIds, moveScript, vacuum, parseScript, getScript,
   normalizePosition,
 } from './utils/db';
+import { resetBlacklist } from './utils/tester';
 
 const VM_VER = browser.runtime.getManifest().version;
 
@@ -237,6 +238,7 @@ initialize()
   });
   setTimeout(autoUpdate, 2e4);
   sync.initialize();
+  resetBlacklist();
 });
 
 // Common functions

+ 2 - 2
src/background/utils/tester.js

@@ -3,7 +3,6 @@ import { getOption, hookOptions } from './options';
 
 const RE = /(.*?):\/\/([^/]*)\/(.*)/;
 let blacklistRules = [];
-resetBlacklist(getOption('blacklist'));
 hookOptions(changes => {
   const { blacklist } = changes;
   if (blacklist) resetBlacklist(blacklist);
@@ -134,8 +133,9 @@ export function testBlacklist(url) {
   }
 }
 export function resetBlacklist(list) {
+  const rules = list || getOption('blacklist');
   // XXX compatible with {Array} list in v2.6.1-
-  blacklistRules = (Array.isArray(list) ? list : (list || '').split('\n'))
+  blacklistRules = (Array.isArray(rules) ? rules : (rules || '').split('\n'))
   .map(line => {
     const item = line.trim();
     if (!item || item.startsWith('#')) return;