Merge branch 'master' of dice.readytalk.com:/home/dicej/git/vm

This commit is contained in:
James Sanders 2007-11-29 18:01:17 -07:00
commit 156bd5cf1a
2 changed files with 14 additions and 1 deletions

View File

@ -180,6 +180,8 @@ ThrowNew(Thread* t, jclass c, const char* message)
void JNICALL
DeleteLocalRef(Thread* t, jobject r)
{
ENTER(t, Thread::ActiveState);
disposeLocalReference(t, r);
}
@ -290,7 +292,7 @@ NewObject(Thread* t, jclass c, jmethodID m, ...)
va_list a;
va_start(a, m);
jobject r = NewObject(t, c, m, a);
jobject r = NewObjectV(t, c, m, a);
va_end(a);

View File

@ -2715,6 +2715,17 @@ objectMonitor(Thread* t, object o, bool createNew)
ENTER(t, Thread::ExclusiveState);
p = hashMapFind(t, t->m->monitorMap, o, objectHash, objectEqual);
if (p) {
if (DebugMonitors) {
fprintf(stderr, "found monitor %p for object %x\n",
static_cast<System::Monitor*>(pointerValue(t, p)),
objectHash(t, o));
}
return static_cast<System::Monitor*>(pointerValue(t, p));
}
System::Monitor* m;
System::Status s = t->m->system->make(&m);
expect(t, t->m->system->success(s));