Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- Manifest: netwerk/test/unit/xpcshell.toml
"use strict";
function test_not_too_long() {
try {
Services.io.newURI(spec);
} catch (e) {
do_throw("newURI threw even though it wasn't passed a large nested URI?");
}
}
function test_too_long() {
var i;
var prefix = "jar:";
for (i = 0; i < 16; i++) {
prefix = prefix + prefix;
}
var suffix = "!/";
for (i = 0; i < 16; i++) {
suffix = suffix + suffix;
}
try {
// The following will produce a recursive call that if
// unchecked would lead to a stack overflow. If we
// do not crash here and thus an exception is caught
// we have passed the test.
Services.io.newURI(spec);
} catch (e) {}
}
function run_test() {
test_not_too_long();
test_too_long();
}