summaryrefslogtreecommitdiff
path: root/libjava/stacktrace.cc
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2005-03-21 14:50:14 +0000
committerAndrew Haley <aph@gcc.gnu.org>2005-03-21 14:50:14 +0000
commite5a8980bb96ce4809da58d3ced2bd4725305368a (patch)
tree21f6764f4fa3c779cf473479dd04137d8458622c /libjava/stacktrace.cc
parent21e01bf10d229bdd98b45464021c10fb510e7348 (diff)
downloadgcc-e5a8980bb96ce4809da58d3ced2bd4725305368a.tar.gz
natVMSecurityManager.cc (getClassContext): Add new arg: klass.
2005-03-17 Andrew Haley <aph@redhat.com> * java/lang/natVMSecurityManager.cc (getClassContext): Add new arg: klass. Pass klass to _Jv_StackTrace::GetClassContext(). * java/lang/ClassLoader.java (getParent): Pass class to VMSecurityManager.getClassContext() (getSystemClassLoader): Likewise. * java/lang/Package.java (getPackage): Likewise. (getPackages): Likewise. * java/lang/SecurityManager.java (getClassContext): Likewise. (currentClassLoader): Likewise. * java/lang/VMSecurityManager.java: (getClassContext): Likewise. (currentClassLoader) Add new arg: caller. Pass caller to VMSecurityManager.getClassContext. * stacktrace.cc (GetClassContext): Correct calculation of jframe_count. * boehm.cc (_Jv_MarkObj): (_Jv_MarkObj): Mark im->source_file_name. From-SVN: r96803
Diffstat (limited to 'libjava/stacktrace.cc')
-rw-r--r--libjava/stacktrace.cc20
1 files changed, 9 insertions, 11 deletions
diff --git a/libjava/stacktrace.cc b/libjava/stacktrace.cc
index 6484dc6008d..583b11a796c 100644
--- a/libjava/stacktrace.cc
+++ b/libjava/stacktrace.cc
@@ -464,19 +464,17 @@ _Jv_StackTrace::GetClassContext (jclass checkClass)
_Jv_StackFrame *frame = &state.frames[i];
FillInFrameInfo (frame);
- if (seen_checkClass
- && frame->klass
- && frame->klass != checkClass)
+ if (seen_checkClass)
{
- jframe_count++;
- if (start_pos == -1)
- start_pos = i;
+ if (frame->klass)
+ {
+ jframe_count++;
+ if (start_pos == -1)
+ start_pos = i;
+ }
}
-
- if (!seen_checkClass
- && frame->klass
- && frame->klass == checkClass)
- seen_checkClass = true;
+ else
+ seen_checkClass = frame->klass == checkClass;
}
result = (JArray<jclass> *) _Jv_NewObjectArray (jframe_count, &Class::class$, NULL);
int pos = 0;