Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
2ed6a3a4
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
4
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
2ed6a3a4
编写于
7月 15, 2013
作者:
J
jfranck
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8014349: (cl) Class.getDeclaredClass problematic in some class loader configurations
Reviewed-by: mchung, ahgross, darcy
上级
2abce32b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
18 addition
and
2 deletion
+18
-2
src/share/classes/java/lang/Class.java
src/share/classes/java/lang/Class.java
+17
-1
src/share/native/java/lang/Class.c
src/share/native/java/lang/Class.c
+1
-1
未找到文件。
src/share/classes/java/lang/Class.java
浏览文件 @
2ed6a3a4
...
@@ -1221,9 +1221,25 @@ public final class Class<T> implements java.io.Serializable,
...
@@ -1221,9 +1221,25 @@ public final class Class<T> implements java.io.Serializable,
* type, or void,then this method returns null.
* type, or void,then this method returns null.
*
*
* @return the declaring class for this class
* @return the declaring class for this class
* @throws SecurityException
* If a security manager, <i>s</i>, is present and the caller's
* class loader is not the same as or an ancestor of the class
* loader for the declaring class and invocation of {@link
* SecurityManager#checkPackageAccess s.checkPackageAccess()}
* denies access to the package of the declaring class
* @since JDK1.1
* @since JDK1.1
*/
*/
public
native
Class
<?>
getDeclaringClass
();
@CallerSensitive
public
Class
<?>
getDeclaringClass
()
throws
SecurityException
{
final
Class
<?>
candidate
=
getDeclaringClass0
();
if
(
candidate
!=
null
)
candidate
.
checkPackageAccess
(
ClassLoader
.
getClassLoader
(
Reflection
.
getCallerClass
()),
true
);
return
candidate
;
}
private
native
Class
<?>
getDeclaringClass0
();
/**
/**
...
...
src/share/native/java/lang/Class.c
浏览文件 @
2ed6a3a4
...
@@ -69,7 +69,7 @@ static JNINativeMethod methods[] = {
...
@@ -69,7 +69,7 @@ static JNINativeMethod methods[] = {
{
"getDeclaredConstructors0"
,
"(Z)["
CTR
,
(
void
*
)
&
JVM_GetClassDeclaredConstructors
},
{
"getDeclaredConstructors0"
,
"(Z)["
CTR
,
(
void
*
)
&
JVM_GetClassDeclaredConstructors
},
{
"getProtectionDomain0"
,
"()"
PD
,
(
void
*
)
&
JVM_GetProtectionDomain
},
{
"getProtectionDomain0"
,
"()"
PD
,
(
void
*
)
&
JVM_GetProtectionDomain
},
{
"getDeclaredClasses0"
,
"()["
CLS
,
(
void
*
)
&
JVM_GetDeclaredClasses
},
{
"getDeclaredClasses0"
,
"()["
CLS
,
(
void
*
)
&
JVM_GetDeclaredClasses
},
{
"getDeclaringClass"
,
"()"
CLS
,
(
void
*
)
&
JVM_GetDeclaringClass
},
{
"getDeclaringClass
0
"
,
"()"
CLS
,
(
void
*
)
&
JVM_GetDeclaringClass
},
{
"getGenericSignature0"
,
"()"
STR
,
(
void
*
)
&
JVM_GetClassSignature
},
{
"getGenericSignature0"
,
"()"
STR
,
(
void
*
)
&
JVM_GetClassSignature
},
{
"getRawAnnotations"
,
"()"
BA
,
(
void
*
)
&
JVM_GetClassAnnotations
},
{
"getRawAnnotations"
,
"()"
BA
,
(
void
*
)
&
JVM_GetClassAnnotations
},
{
"getConstantPool"
,
"()"
CPL
,
(
void
*
)
&
JVM_GetClassConstantPool
},
{
"getConstantPool"
,
"()"
CPL
,
(
void
*
)
&
JVM_GetClassConstantPool
},
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录