/* -*- tab-width: 2; indent-tabs-mode: nil; js-indent-level: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ //----------------------------------------------------------------------------- var BUGNUMBER = 459389; var summary = 'Do not crash with JIT'; var actual = ''; var expect = ''; printBugNumber(BUGNUMBER); printStatus (summary); print('mmmm, food!'); var SNI = {}; SNI.MetaData={}; SNI.MetaData.Parameter=function() { var parameters={}; this.addParameter=function(key,value) { parameters[key]=[]; parameters[key].push(value); }; this.getParameter=function(key,separator){ if(!parameters[key]) { return; } return parameters[key].join(separator); }; this.getKeys=function() { return parameters; }; }; SNI.MetaData.Manager=function(){ var m=new SNI.MetaData.Parameter(); this.getParameter=m.getParameter; }; var MetaDataManager=SNI.MetaData.Manager; SNI.Ads={ }; SNI.Ads.Url=function(){ var p=new SNI.MetaData.Parameter(); this.addParameter=p.addParameter; this.getParameter=p.getParameter; }; function Ad() { var url=new SNI.Ads.Url(); this.addParameter=url.addParameter; this.getParameter=url.getParameter; } function DartAd() { return AdUrl.prototype=new Ad(); } function AdUrl() { } function AdRestriction() { var p=new SNI.MetaData.Parameter(); this.addParameter=p.addParameter; this.getParameter=p.getParameter; this.getKeys=p.getKeys; } function AdRestrictionManager(){ this.restriction=[]; this.isActive=isActive; this.isMatch=isMatch; this.startMatch=startMatch; function isActive(ad,mdm){ var value=false; for(var i=0;i