stacktrace.cc (GetStackTraceElements): Call gnu::gcj::runtime::NameFinder::removeUnknown() to determine if...
2006-02-16 Andrew Haley <aph@redhat.com> * stacktrace.cc (GetStackTraceElements): Call gnu::gcj::runtime::NameFinder::removeUnknown() to determine if non-Java frames should be removed from a printed stack trace. Pass methodName to getLineNumberForFrame(). (getLineNumberForFrame): Set method_name from info.dli_sname. * gnu/gcj/runtime/NameFinder.java (removeUnknown): New method. (remove_unknown): New variable. * include/java-stack.h (_Jv_StackTrace::getLineNumberForFrame): Add methodName arg. From-SVN: r111181
This commit is contained in:
committed by
Andrew Haley
parent
25f2dfd340
commit
24ca2a963a
@@ -34,6 +34,9 @@ import java.util.HashMap;
|
||||
* source file and line number info. Throwable.printStackTrace() will
|
||||
* be faster if this property is set to 'false'.
|
||||
* </ul>
|
||||
* <ul><code>gnu.gcj.runtime.NameFinder.remove_unknown</code>
|
||||
* Whether calls to unknown functions (class and method names are unknown)
|
||||
* should be removed from the stack trace. </ul>
|
||||
* </li>
|
||||
*
|
||||
* <code>close()</code> should be called to get rid of all resources.
|
||||
@@ -57,6 +60,18 @@ public class NameFinder
|
||||
("gnu.gcj.runtime.NameFinder.use_addr2line", "true")
|
||||
).booleanValue();
|
||||
|
||||
private static final boolean remove_unknown
|
||||
= Boolean.valueOf(System.getProperty
|
||||
("gnu.gcj.runtime.NameFinder.remove_unknown", "true")
|
||||
).booleanValue();
|
||||
|
||||
// Return true if non-Java frames should be removed from stack
|
||||
// traces.
|
||||
static final boolean removeUnknown()
|
||||
{
|
||||
return remove_unknown;
|
||||
}
|
||||
|
||||
class Addr2Line
|
||||
{
|
||||
Process proc;
|
||||
|
||||
Reference in New Issue
Block a user