diff options
author | David Daney <ddaney@avtrex.com> | 2006-06-06 17:00:16 +0000 |
---|---|---|
committer | David Daney <daney@gcc.gnu.org> | 2006-06-06 17:00:16 +0000 |
commit | 696dad4b6bbaf23576e59546d1bd3e93dd0e96c4 (patch) | |
tree | e86d94df433101038a6e23099459185aff9d2089 /libjava/stacktrace.cc | |
parent | c02174abd15428eaa2a47df5a1ca6dbbcc1703de (diff) | |
download | gcc-696dad4b6bbaf23576e59546d1bd3e93dd0e96c4.zip gcc-696dad4b6bbaf23576e59546d1bd3e93dd0e96c4.tar.gz gcc-696dad4b6bbaf23576e59546d1bd3e93dd0e96c4.tar.bz2 |
gcj.texi (libgcj Runtime Properties): Document gnu.gcj.runtime.NameFinder.show_raw and...
2006-06-05 David Daney <ddaney@avtrex.com>
* gcj.texi (libgcj Runtime Properties): Document
gnu.gcj.runtime.NameFinder.show_raw and
gnu.gcj.runtime.NameFinder.remove_unknown.
2006-06-05 David Daney <ddaney@avtrex.com>
* gnu/gcj/runtime/NameFinder.java (show_raw): New field.
(showRaw): New method.
* stacktrace.cc : Include gnu/gcj/runtime/StringBuffer.h.
(getLineNumberForFrame): Show IP offset in trace if line number
not available and show_raw true.
From-SVN: r114437
Diffstat (limited to 'libjava/stacktrace.cc')
-rw-r--r-- | libjava/stacktrace.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libjava/stacktrace.cc b/libjava/stacktrace.cc index 6423bbd8..5d429e6 100644 --- a/libjava/stacktrace.cc +++ b/libjava/stacktrace.cc @@ -27,6 +27,7 @@ details. */ #include <java/util/IdentityHashMap.h> #include <gnu/java/lang/MainThread.h> #include <gnu/gcj/runtime/NameFinder.h> +#include <gnu/gcj/runtime/StringBuffer.h> #include <sysdep/backtrace.h> #include <sysdep/descriptor.h> @@ -221,6 +222,17 @@ _Jv_StackTrace::getLineNumberForFrame(_Jv_StackFrame *frame, NameFinder *finder, finder->lookup (binaryName, (jlong) offset); *sourceFileName = finder->getSourceFile(); *lineNum = finder->getLineNum(); + if (*lineNum == -1 && NameFinder::showRaw()) + { + gnu::gcj::runtime::StringBuffer *t = + new gnu::gcj::runtime::StringBuffer(binaryName); + t->append ((jchar)' '); + t->append ((jchar)'['); + // + 1 to compensate for the - 1 adjustment above; + t->append (Long::toHexString (offset + 1)); + t->append ((jchar)']'); + *sourceFileName = t->toString(); + } } #endif } |