aboutsummaryrefslogtreecommitdiff
path: root/libjava/interpret-run.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/interpret-run.cc')
-rw-r--r--libjava/interpret-run.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/libjava/interpret-run.cc b/libjava/interpret-run.cc
index 30e55da..b8c88af 100644
--- a/libjava/interpret-run.cc
+++ b/libjava/interpret-run.cc
@@ -46,9 +46,13 @@ details. */
// If the method is non-static, we need to set the type for the "this" pointer.
if ((method->accflags & java::lang::reflect::Modifier::STATIC) == 0)
{
- // Set the "this" pointer for this frame
- _Jv_word *this_ptr = reinterpret_cast<_Jv_word *> (args);
- frame_desc.obj_ptr = this_ptr[0].o;
+ if (args)
+ {
+ // Set the "this" pointer for this frame.
+ _Jv_word *this_ptr = reinterpret_cast<_Jv_word *> (args);
+ frame_desc.obj_ptr = this_ptr[0].o;
+ }
+
frame_desc.locals_type[0] = 'o';
type_ctr++;
}