Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 // Second testPropagatedFunArgs test -- this is a crash-test.
2 (function () {
3 var escapee;
5 function testPropagatedFunArgs()
6 {
7 const magic = 42;
9 var win = this;
10 var res = [], q = [];
11 function addEventListener(name, func, flag) {
12 q.push(func);
13 }
15 var pageInfo = "pageInfo", obs;
16 addEventListener("load", handleLoad, true);
18 var observer = {
19 observe: function(win, topic, data) {
20 // obs.removeObserver(observer, "page-info-dialog-loaded");
21 handlePageInfo();
22 }
23 };
25 function handleLoad() {
26 //pageInfo = { toString: function() { return "pageInfo"; } };
27 obs = { addObserver: function (obs, topic, data) { obs.observe(win, topic, data); } };
28 obs.addObserver(observer, "page-info-dialog-loaded", false);
29 }
31 function handlePageInfo() {
32 res.push(pageInfo);
33 function $(aId) {
34 function notSafe() {
35 return magic;
36 }
37 notSafe();
38 res.push(pageInfo);
39 };
40 var feedTab = $("feedTab");
41 }
43 escapee = q[0];
44 return res.join(',');
45 }
47 testPropagatedFunArgs();
49 escapee();
50 })();
52 function testStringLengthNoTinyId()
53 {
54 var x = "unset";
55 var t = new String("");
56 for (var i = 0; i < 5; i++)
57 x = t["-1"];
59 var r = "t['-1'] is " + x;
60 t["-1"] = "foo";
61 r += " when unset, '" + t["-1"] + "' when set";
62 return r;
63 }
64 assertEq(testStringLengthNoTinyId(), "t['-1'] is undefined when unset, 'foo' when set");