From edbda9a33830d4c7ca66011771bea56801e310ad Mon Sep 17 00:00:00 2001 From: Stefan Ring Date: Fri, 26 Jun 2009 16:44:10 +0200 Subject: [PATCH] Added test for PR131. --- tests/regression/bugzilla/All.java | 3 +- tests/regression/bugzilla/PR131.java | 59 ++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 tests/regression/bugzilla/PR131.java diff --git a/tests/regression/bugzilla/All.java b/tests/regression/bugzilla/All.java index c7df40860..445414737 100644 --- a/tests/regression/bugzilla/All.java +++ b/tests/regression/bugzilla/All.java @@ -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 index 000000000..6ae256a22 --- /dev/null +++ b/tests/regression/bugzilla/PR131.java @@ -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(); + + } +} -- 2.25.1