Index: testing/resources/javascript/bug_679642.in |
diff --git a/testing/resources/javascript/bug_679642.in b/testing/resources/javascript/bug_679642.in |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2241723dd22abab1ed8e5bc93c8ba666d47d8216 |
--- /dev/null |
+++ b/testing/resources/javascript/bug_679642.in |
@@ -0,0 +1,140 @@ |
+{{header}} |
+{{object 1 0}} << |
+ /Type /Catalog |
+ /Pages 2 0 R |
+ /AcroForm 4 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 |
+ /Resources << |
+ /Font <</F1 15 0 R>> |
+ >> |
+ /Contents [21 0 R] |
+ /MediaBox [0 0 612 792] |
+ /Annots [7 0 R 8 0 R 9 0 R] |
+>> |
+endobj |
+% Forms |
+{{object 4 0}} << |
+ /XFA [ |
+ (xdp:xdp) 23 0 R |
+ (form) 29 0 R |
+ (</xdp:xdp>) 30 0 R |
+ ] |
+ /Fields [ |
+ 5 0 R |
+ ] |
+>> |
+endobj |
+% Fields |
+{{object 5 0}} << |
+ /T (MyField) |
+ /Kids [ |
+ 6 0 R |
+ ] |
+ /Rect [100 100 400 400] |
+>> |
+endobj |
+{{object 6 0}} << |
+ /Parent 5 0 R |
+ /FT /Btn |
+ /Kids [ |
+ 7 0 R |
+ 8 0 R |
+ 9 0 R |
+ ] |
+ /Rect [200 200 220 220] |
+>> |
+endobj |
+{{object 7 0}} << |
+ /Parent 6 0 R |
+ /Type /Annot |
+ /Subtype /Widget |
+ /Rect [220 220 240 240] |
+>> |
+endobj |
+{{object 8 0}} << |
+ /Parent 6 0 R |
+ /Type /Annot |
+ /Subtype /Widget |
+ /Rect [240 240 260 260] |
+>> |
+endobj |
+{{object 9 0}} << |
+ /Parent 6 0 R |
+ /Type /Annot |
+ /Subtype /Widget |
+ /Rect [240 240 260 260] |
+>> |
+endobj |
+% OpenAction action |
+{{object 10 0}} << |
+ /Type /Action |
+ /S /JavaScript |
+ /JS 11 0 R |
+>> |
+endobj |
+% JS program to exexute |
+{{object 11 0}} << |
+>> |
+stream |
+var theName = "MyField"; |
+function Mangles() { |
+ app.alert('Starting ...'); |
+ try { |
+ var f = this.getField(theName); |
+ Object.defineProperty(Array.prototype, 1, { |
+ get: () => { |
+ return this[1]; |
+ }, |
+ set: (v) => { |
+ app.alert('Firing ...'); |
+ this.removeField(theName); |
+ gc(); |
+ return false; |
+ }, |
+ enumerable: true |
+ }); |
+ f.page; |
+ } catch (e) { |
+ app.alert("failed: " + e); |
+ } |
+} |
+Mangles(); |
+endstream |
+endobj |
+{{object 23 0}} << |
+>>stream |
+<?xml version="1.0" encoding="UTF-8"?> |
+<xdp:xdp xmlns:xdp="http://ns.adobe.com/xdp/"> |
+endstream |
+endobj |
+{{object 29 0}} << |
+>>stream |
+<config></config> |
+<template></template> |
+endstream |
+endobj |
+{{object 30 0}} << |
+>>stream |
+</xdp:xdp> |
+endstream |
+endobj |
+{{xref}} |
+trailer << |
+ /Root 1 0 R |
+>> |
+{{startxref}} |
+%%EOF |