<!
DOCTYPE HTML >
<
html >
<!--
https : / / bugzilla . mozilla . org / show_bug . cgi ? id = 445886
-->
<
head >
<
meta http-equiv=
"Content-type" content=
"text/html; charset=UTF-8" >
<
title >Test for Unicode non-characters</
title >
<
script src=
"/tests/SimpleTest/SimpleTest.js" ></
script >
<
link rel=
"stylesheet" type=
"text/css" href=
"/tests/SimpleTest/test.css" />
</
head >
<
body onload=
"Inject()" >
<
pre id=
"test" >
<
script class=
"testbody" type=
"text/javascript" >
/* eslint-disable no-eval */
/** Test that unicode non-characters are not discarded */
function test()
{
is($(
"display" ).innerHTML,
"All good." ,
"Noncharacters not stripped" );
SimpleTest.finish();
}
// eslint-disable-next-line complexity
function Inject()
{
//
script fragments containing Unicode non-characters
try {
//
U +FDD0
eval(
"$(\" display\
").inner\ufdd0HTML += \" U +FDD0 is evil\
"" );
} catch(e) {}
try {
//
U +FDD1
eval(
"$(\" display\
").inner\ufdd1HTML += \" U +FDD1 is evil\
"" );
} catch(e) {}
try {
//
U +FDD2
eval(
"$(\" display\
").inner\ufdd2HTML += \" U +FDD2 is evil\
"" );
} catch(e) {}
try {
//
U +FDD3
eval(
"$(\" display\
").inner\ufdd3HTML += \" U +FDD3 is evil\
"" );
} catch(e) {}
try {
//
U +FDD4
eval(
"$(\" display\
").inner\ufdd4HTML += \" U +FDD4 is evil\
"" );
} catch(e) {}
try {
//
U +FDD5
eval(
"$(\" display\
").inner\ufdd5HTML += \" U +FDD5 is evil\
"" );
} catch(e) {}
try {
//
U +FDD6
eval(
"$(\" display\
").inner\ufdd6HTML += \" U +FDD6 is evil\
"" );
} catch(e) {}
try {
//
U +FDD7
eval(
"$(\" display\
").inner\ufdd7HTML += \" U +FDD7 is evil\
"" );
} catch(e) {}
try {
//
U +FDD8
eval(
"$(\" display\
").inner\ufdd8HTML += \" U +FDD8 is evil\
"" );
} catch(e) {}
try {
//
U +FDD9
eval(
"$(\" display\
").inner\ufdd9HTML += \" U +FDD9 is evil\
"" );
} catch(e) {}
try {
//
U +FDDA
eval(
"$(\" display\
").inner\ufddaHTML += \" U +FDDA is evil\
"" );
} catch(e) {}
try {
//
U +FDDB
eval(
"$(\" display\
").inner\ufddbHTML += \" U +FDDB is evil\
"" );
} catch(e) {}
try {
//
U +FDDC
eval(
"$(\" display\
").inner\ufddcHTML += \" U +FDDC is evil\
"" );
} catch(e) {}
try {
//
U +FDDD
eval(
"$(\" display\
").inner\ufdddHTML += \" U +FDDD is evil\
"" );
} catch(e) {}
try {
//
U +FDDE
eval(
"$(\" display\
").inner\ufddeHTML += \" U +FDDE is evil\
"" );
} catch(e) {}
try {
//
U +FDDF
eval(
"$(\" display\
").inner\ufddfHTML += \" U +FDDF is evil\
"" );
} catch(e) {}
try {
//
U +FDE0
eval(
"$(\" display\
").inner\ufde0HTML += \" U +FDE0 is evil\
"" );
} catch(e) {}
try {
//
U +FDE1
eval(
"$(\" display\
").inner\ufde1HTML += \" U +FDE1 is evil\
"" );
} catch(e) {}
try {
//
U +FDE2
eval(
"$(\" display\
").inner\ufde2HTML += \" U +FDE2 is evil\
"" );
} catch(e) {}
try {
//
U +FDE3
eval(
"$(\" display\
").inner\ufde3HTML += \" U +FDE3 is evil\
"" );
} catch(e) {}
try {
//
U +FDE4
eval(
"$(\" display\
").inner\ufde4HTML += \" U +FDE4 is evil\
"" );
} catch(e) {}
try {
//
U +FDE5
eval(
"$(\" display\
").inner\ufde5HTML += \" U +FDE5 is evil\
"" );
} catch(e) {}
try {
//
U +FDE6
eval(
"$(\" display\
").inner\ufde6HTML += \" U +FDE6 is evil\
"" );
} catch(e) {}
try {
//
U +FDE7
eval(
"$(\" display\
").inner\ufde7HTML += \" U +FDE7 is evil\
"" );
} catch(e) {}
try {
//
U +FDE8
eval(
"$(\" display\
").inner\ufde8HTML += \" U +FDE8 is evil\
"" );
} catch(e) {}
try {
//
U +FDE9
eval(
"$(\" display\
").inner\ufde9HTML += \" U +FDE9 is evil\
"" );
} catch(e) {}
try {
//
U +FDEA
eval(
"$(\" display\
").inner\ufdeaHTML += \" U +FDEA is evil\
"" );
} catch(e) {}
try {
//
U +FDEB
eval(
"$(\" display\
").inner\ufdebHTML += \" U +FDEB is evil\
"" );
} catch(e) {}
try {
//
U +FDEC
eval(
"$(\" display\
").inner\ufdecHTML += \" U +FDEC is evil\
"" );
} catch(e) {}
try {
//
U +FDED
eval(
"$(\" display\
").inner\ufdedHTML += \" U +FDED is evil\
"" );
} catch(e) {}
try {
//
U +FDEE
eval(
"$(\" display\
").inner\ufdeeHTML += \" U +FDEE is evil\
"" );
} catch(e) {}
try {
//
U +FDEF
eval(
"$(\" display\
").inner\ufdefHTML += \" U +FDEF is evil\
"" );
} catch(e) {}
try {
//
U +FFFE
eval(
"$(\" display\
").inner\ufffeHTML += \" U +FFFE is evil\
"" );
} catch(e) {}
try {
//
U +FFFF
eval(
"$(\" display\
").inner\uffffHTML += \" U +FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
1 FFFE
eval(
"$(\" display\
").inner\ud83f\udffeHTML += \" U +
1 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
1 FFFF
eval(
"$(\" display\
").inner\ud83f\udfffHTML += \" U +
1 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
2 FFFE
eval(
"$(\" display\
").inner\ud87f\udffeHTML += \" U +
2 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
2 FFFF
eval(
"$(\" display\
").inner\ud87f\udfffHTML += \" U +
2 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
3 FFFE
eval(
"$(\" display\
").inner\ud8bf\udffeHTML += \" U +
3 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
3 FFFF
eval(
"$(\" display\
").inner\ud8bf\udfffHTML += \" U +
3 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
4 FFFE
eval(
"$(\" display\
").inner\ud8ff\udffeHTML += \" U +
4 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
4 FFFF
eval(
"$(\" display\
").inner\ud8ff\udfffHTML += \" U +
4 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
5 FFFE
eval(
"$(\" display\
").inner\ud93f\udffeHTML += \" U +
5 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
5 FFFF
eval(
"$(\" display\
").inner\ud93f\udfffHTML += \" U +
5 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
6 FFFE
eval(
"$(\" display\
").inner\ud97f\udffeHTML += \" U +
6 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
6 FFFF
eval(
"$(\" display\
").inner\ud97f\udfffHTML += \" U +
6 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
7 FFFE
eval(
"$(\" display\
").inner\ud9bf\udffeHTML += \" U +
7 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
7 FFFF
eval(
"$(\" display\
").inner\ud9bf\udfffHTML += \" U +
7 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
8 FFFE
eval(
"$(\" display\
").inner\ud9ff\udffeHTML += \" U +
8 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
8 FFFF
eval(
"$(\" display\
").inner\ud9ff\udfffHTML += \" U +
8 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +
9 FFFE
eval(
"$(\" display\
").inner\uda3f\udffeHTML += \" U +
9 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
9 FFFF
eval(
"$(\" display\
").inner\uda3f\udfffHTML += \" U +
9 FFFF is evil\
"" );
} catch(e) {}
try {
//
U +AFFFE
eval(
"$(\" display\
").inner\uda7f\udffeHTML += \" U +AFFFE is evil\
"" );
} catch(e) {}
try {
//
U +AFFFF
eval(
"$(\" display\
").inner\uda7f\udfffHTML += \" U +AFFFF is evil\
"" );
} catch(e) {}
try {
//
U +BFFFE
eval(
"$(\" display\
").inner\udabf\udffeHTML += \" U +BFFFE is evil\
"" );
} catch(e) {}
try {
//
U +BFFFF
eval(
"$(\" display\
").inner\udabf\udfffHTML += \" U +BFFFF is evil\
"" );
} catch(e) {}
try {
//
U +CFFFE
eval(
"$(\" display\
").inner\udaff\udffeHTML += \" U +CFFFE is evil\
"" );
} catch(e) {}
try {
//
U +CFFFF
eval(
"$(\" display\
").inner\udaff\udfffHTML += \" U +CFFFF is evil\
"" );
} catch(e) {}
try {
//
U +DFFFE
eval(
"$(\" display\
").inner\udb3f\udffeHTML += \" U +DFFFE is evil\
"" );
} catch(e) {}
try {
//
U +DFFFF
eval(
"$(\" display\
").inner\udb3f\udfffHTML += \" U +DFFFF is evil\
"" );
} catch(e) {}
try {
//
U +EFFFE
eval(
"$(\" display\
").inner\udb7f\udffeHTML += \" U +EFFFE is evil\
"" );
} catch(e) {}
try {
//
U +EFFFF
eval(
"$(\" display\
").inner\udb7f\udfffHTML += \" U +EFFFF is evil\
"" );
} catch(e) {}
try {
//
U +FFFFE
eval(
"$(\" display\
").inner\udbbf\udffeHTML += \" U +FFFFE is evil\
"" );
} catch(e) {}
try {
//
U +FFFFF
eval(
"$(\" display\
").inner\udbbf\udfffHTML += \" U +FFFFF is evil\
"" );
} catch(e) {}
try {
//
U +
10 FFFE
eval(
"$(\" display\
").inner\udbff\udffeHTML += \" U +
10 FFFE is evil\
"" );
} catch(e) {}
try {
//
U +
10 FFFF
eval(
"$(\" display\
").inner\udbff\udfffHTML += \" U +
10 FFFF is evil\
"" );
} catch(e) {}
test();
}
SimpleTest.waitForExplicitFinish();
</
script >
</
pre >
<
a target=
"_blank" href=
"https://bugzilla.mozilla.org/show_bug.cgi?id=445886 " >Mozill
a Bug 445886 </a >
<p id="display" >All good.</p >
<div id="content" style ="display: none" ></div >
</body >
</html >
Messung V0.5 in Prozent C=88 H=98 G=93
¤ Dauer der Verarbeitung: 0.5 Sekunden
¤
*© Formatika GbR, Deutschland