@@ -204,6 +204,12 @@ const RuleWriter = {
204204 return null ;
205205 }
206206
207+ this . log ( DBUG , "name is '" + xmlrules . @name + "'\n" ) ;
208+ if ( xmlrules . @name == xmlrules . @nonexistantthing ) {
209+ this . log ( DBUG , "FILE " + file + "is not a rulefile\n" ) ;
210+ return null ;
211+ }
212+
207213 var match_rl = null ;
208214 var dflt_off = null ;
209215 if ( xmlrules . @match_rule . length ( ) > 0 ) match_rl = xmlrules . @match_rule ;
@@ -238,49 +244,40 @@ const RuleWriter = {
238244 } ,
239245} ;
240246
247+
248+
241249const HTTPSRules = {
242250 init : function ( ) {
243- /*
244- // XXX: Major, temporary hack.
245- var ruleset = new RuleSet("Facebook", null);
246- ruleset.rules.push(new Rule("^http://www.facebook.com",
247- "https://www.facebook.com"));
248- RuleWriter.write(ruleset);
249- this.rules = [];
250- this.rules.push(ruleset);
251- return;
252- */
253251 try {
254- var rulefiles = RuleWriter . enumerate ( RuleWriter . getCustomRuleDir ( ) ) ;
255- var i = 0 ;
256252 this . rules = [ ] ;
257253 this . exclusions = [ ] ;
258- for ( i = 0 ; i < rulefiles . length ; ++ i ) {
259- try {
260- this . log ( DBUG , "Loading rule file: " + rulefiles [ i ] ) ;
261- this . rules . push ( RuleWriter . read ( rulefiles [ i ] ) ) ;
262- } catch ( e ) {
263- this . log ( WARN , "Error in rules file: " + e ) ;
264- }
265- }
254+ var rulefiles = RuleWriter . enumerate ( RuleWriter . getCustomRuleDir ( ) ) ;
255+ this . scanRulefiles ( rulefiles ) ;
256+ rulefiles = RuleWriter . enumerate ( RuleWriter . getRuleDir ( ) ) ;
257+ this . scanRulefiles ( rulefiles ) ;
266258
267- var rulefiles = RuleWriter . enumerate ( RuleWriter . getRuleDir ( ) ) ;
268- var i = 0 ;
269- for ( i = 0 ; i < rulefiles . length ; ++ i ) {
270- try {
271- this . log ( DBUG , "Loading rule file: " + rulefiles [ i ] ) ;
272- this . rules . push ( RuleWriter . read ( rulefiles [ i ] ) ) ;
273- } catch ( e ) {
274- this . log ( WARN , "Error in rules file: " + e ) ;
275- }
276- }
277259 } catch ( e ) {
278260 this . log ( WARN , "Rules Failed: " + e ) ;
279261 }
280262 this . log ( DBUG , "Rules loaded" ) ;
281263 return ;
282264 } ,
283265
266+ scanRulefiles : function ( rulefiles ) {
267+ var i = 0 ;
268+ var r = null ;
269+ for ( i = 0 ; i < rulefiles . length ; ++ i ) {
270+ try {
271+ this . log ( DBUG , "Loading rule file: " + rulefiles [ i ] . path ) ;
272+ r = RuleWriter . read ( rulefiles [ i ] ) ;
273+ if ( r != null )
274+ this . rules . push ( r ) ;
275+ } catch ( e ) {
276+ this . log ( WARN , "Error in rules file: " + e ) ;
277+ }
278+ }
279+ } ,
280+
284281 replaceURI : function ( uri ) {
285282 var i = 0 ;
286283 for ( i = 0 ; i < this . rules . length ; ++ i ) {
0 commit comments