diff options
Diffstat (limited to 'libjava/jni.cc')
-rw-r--r-- | libjava/jni.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libjava/jni.cc b/libjava/jni.cc index 9865ce4..0005578 100644 --- a/libjava/jni.cc +++ b/libjava/jni.cc @@ -1984,9 +1984,9 @@ _Jv_GetJNIEnvNewFrame (jclass klass) { env = (JNIEnv *) _Jv_MallocUnchecked (sizeof (JNIEnv)); env->p = &_Jv_JNIFunctions; - env->ex = NULL; env->klass = klass; env->locals = NULL; + // We set env->ex below. _Jv_SetCurrentJNIEnv (env); } @@ -1999,11 +1999,13 @@ _Jv_GetJNIEnvNewFrame (jclass klass) frame->marker = MARK_SYSTEM; frame->size = FRAME_SIZE; frame->next = env->locals; - env->locals = frame; for (int i = 0; i < frame->size; ++i) frame->vec[i] = NULL; + env->locals = frame; + env->ex = NULL; + return env; } |