Added test for PR131.
authorStefan Ring <stefan@complang.tuwien.ac.at>
Fri, 26 Jun 2009 14:44:10 +0000 (16:44 +0200)
committerStefan Ring <stefan@complang.tuwien.ac.at>
Fri, 26 Jun 2009 14:44:10 +0000 (16:44 +0200)
tests/regression/bugzilla/All.java
tests/regression/bugzilla/PR131.java [new file with mode: 0644]

index c7df408602bb2af4b670dcc79a1b47baa927d3a7..4454147378fee5cd95d1678356503c2459f82cf7 100644 (file)
@@ -40,7 +40,8 @@ PR113.class,
 PR114.class,
 PR116.class,
 PR119.class,
-PR125.class
+PR125.class,
+PR131.class
 })
 
 public class All {
diff --git a/tests/regression/bugzilla/PR131.java b/tests/regression/bugzilla/PR131.java
new file mode 100644 (file)
index 0000000..6ae256a
--- /dev/null
@@ -0,0 +1,59 @@
+/* tests/regression/bugzilla/PR119.java
+
+   Copyright (C) 2009
+   CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
+
+   This file is part of CACAO.
+
+   This program is free software; you can redistribute it and/or
+   modify it under the terms of the GNU General Public License as
+   published by the Free Software Foundation; either version 2, or (at
+   your option) any later version.
+
+   This program is distributed in the hope that it will be useful, but
+   WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+   02110-1301, USA.
+
+*/
+
+
+import org.junit.Test;
+
+class testobject {
+    private final Object o = new Object();
+
+    private final Object f = new Object() {
+        protected void finalize() throws Throwable {
+            synchronized(o) {
+                o.notify();
+            }
+        }
+    };
+
+    testobject() {
+        synchronized(o) {
+            // inflate the lock
+            Thread.currentThread().interrupt();
+            try {
+                o.wait();
+            }
+            catch (InterruptedException e) {
+            }
+        }
+    }
+}
+
+public class PR131 {
+    @Test
+    public void test() {
+        for (int i=0; i<20000; i++)
+            new testobject();
+
+    }
+}