From owner-freebsd-java Mon Nov 22 13:36:47 1999 Delivered-To: freebsd-java@freebsd.org Received: from seanreilly.com (seanreilly.com [206.161.139.100]) by hub.freebsd.org (Postfix) with ESMTP id 0C19814C14 for ; Mon, 22 Nov 1999 13:36:38 -0800 (PST) (envelope-from sreilly@seanreilly.com) Received: from sean.cnri.reston.va.us (cnri-7-211.cnri.reston.va.us [132.151.7.211]) by seanreilly.com (8.9.3/8.9.3) with ESMTP id QAA06395 for ; Mon, 22 Nov 1999 16:38:16 -0500 (EST) Date: Mon, 22 Nov 1999 16:29:47 -0500 (EST) From: Sean Reilly X-Sender: sreilly@sean.cnri.reston.va.us To: freebsd-java@freebsd.org Subject: SIGSEGV using JPython Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I've been messing around with JPython lately (see www.jpython.org) and have been getting a SIGSEGV repeatedly using the FreeBSD JDK (the 9/22/1999 version). To repeat it, you'll need to install JPython which you can get for free from jpython.org. Then, run the following simple program using the command-line interpreter: > ./jpython JPython 1.1beta4 on java1.1.8 (JIT: NONE) Copyright (C) 1997-1999 Corporation for National Research Initiatives >>> from java.awt import * >>> f = Frame.Frame("Test frame") The result is the following thread dump: SIGSEGV 11* segmentation violation Full thread dump: "Finalizer thread" (TID:0x2866f210, sys_thread_t:0x29473f00, state:R) prio=1 "Async Garbage Collector" (TID:0x2866f258, sys_thread_t:0x29452f00, state:R) prio=1 "Idle thread" (TID:0x2866f2a0, sys_thread_t:0x29431f00, state:R) prio=0 "Clock" (TID:0x2866f088, sys_thread_t:0x29410f00, state:CW) prio=12 "main" (TID:0x2866f0b0, sys_thread_t:0x8124a00, state:R) prio=5 *current thread* org.python.core.PyJavaClass.setBeanInfoCustom(PyJavaClass.java:538) org.python.core.PyJavaClass.init__dict__(PyJavaClass.java:69) org.python.core.PyJavaClass.initialize(PyJavaClass.java:90) org.python.core.PyJavaClass.init__bases__(PyJavaClass.java:146) org.python.core.PyJavaClass.initialize(PyJavaClass.java:89) org.python.core.PyJavaClass.init__bases__(PyJavaClass.java:146) org.python.core.PyJavaClass.initialize(PyJavaClass.java:89) org.python.core.PyJavaClass.init__bases__(PyJavaClass.java:146) org.python.core.PyJavaClass.initialize(PyJavaClass.java:89) org.python.core.PyJavaClass.lookupGivingClass(PyJavaClass.java:621) org.python.core.PyClass.lookup(PyClass.java:156) org.python.core.PyJavaClass.__findattr__(PyJavaClass.java:665) org.python.core.PyObject.__getattr__(PyObject.java:597) org.python.core.PyObject.invoke(PyObject.java:1867) org.python.pycode._pyx2.f$0() org.python.pycode._pyx2.call_function() org.python.core.PyTableCode.call(PyTableCode.java:155) org.python.core.Py.runCode(Py.java:965) org.python.core.Py.exec(Py.java:979) org.python.util.PythonInterpreter.exec(PythonInterpreter.java:122) Monitor Cache Dump: Registered Monitor Dump: Verifier lock: Thread queue lock: Name and type hash table lock: String intern lock: JNI pinning lock: JNI global reference lock: BinClass lock: Class loading lock: Java stack lock: Code rewrite lock: Heap lock: Has finalization queue lock: Finalize me queue lock: Monitor IO lock: Child death monitor: Event monitor: I/O monitor: Alarm monitor: Waiting to be notified: "Clock" (0x29410f00) Memory allocation lock: Monitor registry: owner "main" (0x8124a00, 1 entry) Thread Alarm Q: Abort (core dumped) ------------------------------------------------------------------ Here is the snippet of JPython code with line numbers, that seems to be causing the problem: 537 Class eClass = args[0]; 538 if (!(java.util.EventListener.class.isAssignableFrom(eClass))) 539 continue; The isAssignableFrom seems like a rarely used method (at least in my experience) so maybe that's the problem? Thanks, Sean PS The last time I checked the Java2 for FreeBSD RFE had over 1400 votes! Unfortunately the BugParade has been down the last few times I tried to check it out. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message