Bugs item #1470544, was opened at 2006-04-14 15:13
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=438935&aid=1470544&group_id=44253
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Interactions
Group: 3: Ugly
Status: Open
Resolution: None
Priority: 5
Submitted By: Dan Smith (dlsmith)
Assigned to: Nobody/Anonymous (nobody)
Summary: Interactions doesn't handle assertions cleanly
Initial Comment:
When I run a program with a simple "assert" failure in
its main method, I get the following exception, and the
interactions pane locks up (until I reset it).
I have assertions enabled in the preferences. When an
assertion fails, a java.lang.AssertionError occurs,
which is apparently being handled incorrectly.
It's debatable what should happen when an Error occurs.
Since errors generally indicate that the system is no
longer in a stable state, we may not want to allow the
interactions pane to continue to be used (without a
reset). But we definitely shouldn't be crashing like this.
Exception in thread "interpret thread:
DoAssert.main(new String[]{});"
java.lang.NullPointerException
at
edu.rice.cs.drjava.model.repl.InteractionsDocument.appendExceptionResult(InteractionsDocument.java:320)
at
edu.rice.cs.drjava.model.repl.InteractionsModel.replThrewException(InteractionsModel.java:489)
at
edu.rice.cs.drjava.model.repl.newjvm.MainJVM$ResultHandler.forExceptionResult(MainJVM.java:840)
at
edu.rice.cs.drjava.model.repl.newjvm.ExceptionResult.apply(ExceptionResult.java:88)
at
edu.rice.cs.drjava.model.repl.newjvm.MainJVM.interpretResult(MainJVM.java:249)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native
Method)
at
sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
at java.lang.Thread.run(Thread.java:595)
at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
at
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
at
edu.rice.cs.drjava.model.repl.newjvm.MainJVM_Stub.interpretResult(Unknown
Source)
at
edu.rice.cs.drjava.model.repl.newjvm.InterpreterJVM$4.run(InterpreterJVM.java:308)
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=438935&aid=1470544&group_id=44253
|