#include <jvm.h>
#include <java-signal.h>
#include <java-threads.h>
+#include <java-interp.h>
#ifdef ENABLE_JVMPI
#include <jvmpi.h>
// Null terminate the strings.
while (_Jv_Environment_Properties[i].key)
{
- _Jv_Environment_Properties[i].key[_Jv_Environment_Properties[i].key_length] = 0;
- _Jv_Environment_Properties[i++].value[_Jv_Environment_Properties[i].value_length] = 0;
+ property_pair *prop = &_Jv_Environment_Properties[i];
+ prop->key[prop->key_length] = 0;
+ prop->value[prop->value_length] = 0;
+ i++;
}
}
}
_Jv_InitThreads ();
_Jv_InitGC ();
_Jv_InitializeSyncMutex ();
+
+#ifdef INTERPRETER
+ _Jv_InitInterpreter ();
+#endif
#ifdef HANDLE_SEGV
INIT_SEGV;
_Jv_GCInitializeFinalizers (&::gnu::gcj::runtime::FinalizerThread::finalizerReady);
// Start the GC finalizer thread. A VirtualMachineError can be
- // thrown by the runtime if, say, threads aren't available. In this
- // case finalizers simply won't run.
+ // thrown by the runtime if, say, threads aren't available.
try
{
using namespace gnu::gcj::runtime;
_Jv_RunMain (jclass klass, const char *name, int argc, const char **argv,
bool is_jar)
{
+#ifndef DISABLE_MAIN_ARGS
_Jv_SetArgs (argc, argv);
+#endif
java::lang::Runtime *runtime = NULL;