| {{header}} |
| {{object 1 0}} << |
| /Type /Catalog |
| /Pages 2 0 R |
| /OpenAction 10 0 R |
| >> |
| endobj |
| {{object 2 0}} << |
| /Type /Pages |
| /Count 1 |
| /Kids [ |
| 3 0 R |
| ] |
| >> |
| endobj |
| % Page number 0. |
| {{object 3 0}} << |
| /Type /Page |
| /Parent 2 0 R |
| /MediaBox [0 0 612 792] |
| >> |
| % OpenAction action |
| {{object 10 0}} << |
| /Type /Action |
| /S /JavaScript |
| /JS 11 0 R |
| >> |
| endobj |
| % JS program to exexute |
| {{object 11 0}} << |
| {{streamlen}} |
| >> |
| stream |
| function testIllegalConstructor(name, allowed) { |
| const constructorString = name + ".constructor"; |
| let constructor; |
| try { |
| constructor = eval(constructorString); |
| } catch (e) { |
| app.alert("FAIL: No such " + constructorString); |
| return; |
| } |
| try { |
| constructor(); |
| app.alert("FAIL: " + constructorString + "(): returned"); |
| } catch (e) { |
| app.alert("PASS: " + constructorString + "(): " + e); |
| } |
| try { |
| new constructor; |
| app.alert("FAIL: new " + constructorString + ": returned"); |
| } catch (e) { |
| app.alert("PASS: new " + constructorString + ": " + e); |
| } |
| } |
| testIllegalConstructor("this"); |
| testIllegalConstructor("app"); |
| testIllegalConstructor("event"); |
| testIllegalConstructor("font"); |
| testIllegalConstructor("global"); |
| testIllegalConstructor("util"); |
| testIllegalConstructor("style"); |
| testIllegalConstructor("color"); |
| testIllegalConstructor("border"); |
| testIllegalConstructor("display"); |
| testIllegalConstructor("console"); |
| testIllegalConstructor("position"); |
| testIllegalConstructor("highlight"); |
| testIllegalConstructor("zoomtype"); |
| testIllegalConstructor("scaleHow"); |
| testIllegalConstructor("scaleWhen"); |
| endstream |
| endobj |
| {{xref}} |
| {{trailer}} |
| {{startxref}} |
| %%EOF |