gcc/libjava/java/security/natVMAccessControlState.cc
Gary Benson be6415beae Thread.java (accessControlState): New field.
2006-08-14  Gary Benson  <gbenson@redhat.com>

	* java/lang/Thread.java (accessControlState): New field.
	* java/security/VMAccessControlState.java: New file.
	* java/security/natVMAccessControlState.cc: Likewise.
	* java/security/VMAccessController.java
	(contexts, inGetContext): Removed.
	(pushContext, popContext, getContext): Use VMAccessControlState.
	* Makefile.am (nat_source_files): Updated.
	* sources.am, Makefile.in: Rebuilt.

From-SVN: r116128
2006-08-14 14:24:52 +00:00

33 lines
872 B
C++

// natVMAccessControlState.cc -- Native part of the VMAccessControlState class.
/* Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of libgcj.
This software is copyrighted work licensed under the terms of the
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
details. */
#include <config.h>
#include <gcj/cni.h>
#include <jvm.h>
#include <java/lang/Thread.h>
#include <java/security/VMAccessControlState.h>
java::security::VMAccessControlState *
java::security::VMAccessControlState::getThreadState ()
{
java::lang::Thread *thread = java::lang::Thread::currentThread ();
if (thread == NULL)
return NULL;
VMAccessControlState *state =
reinterpret_cast<VMAccessControlState *> (thread->accessControlState);
if (state == NULL)
thread->accessControlState = state = new VMAccessControlState ();
return state;
}