Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
f81b55b2
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看板
提交
f81b55b2
编写于
11月 19, 2012
作者:
D
dmocek
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6563318: RMI data sanitization
Reviewed-by: ahgross, hawtin, mchung, smarks
上级
e26ca038
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
42 addition
and
3 deletion
+42
-3
src/share/classes/sun/rmi/transport/proxy/CGIHandler.java
src/share/classes/sun/rmi/transport/proxy/CGIHandler.java
+3
-3
test/java/rmi/testlibrary/JavaVM.java
test/java/rmi/testlibrary/JavaVM.java
+39
-0
未找到文件。
src/share/classes/sun/rmi/transport/proxy/CGIHandler.java
浏览文件 @
f81b55b2
/*
/*
* Copyright (c) 1996, 20
08
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 20
12
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -153,7 +153,7 @@ public final class CGIHandler {
...
@@ -153,7 +153,7 @@ public final class CGIHandler {
returnServerError
(
e
.
getMessage
());
returnServerError
(
e
.
getMessage
());
}
}
else
else
returnClientError
(
"invalid command
: "
+
command
);
returnClientError
(
"invalid command
."
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
returnServerError
(
"internal error: "
+
e
.
getMessage
());
returnServerError
(
"internal error: "
+
e
.
getMessage
());
}
}
...
@@ -225,7 +225,7 @@ final class CGIForwardCommand implements CGICommandHandler {
...
@@ -225,7 +225,7 @@ final class CGIForwardCommand implements CGICommandHandler {
try
{
try
{
port
=
Integer
.
parseInt
(
param
);
port
=
Integer
.
parseInt
(
param
);
}
catch
(
NumberFormatException
e
)
{
}
catch
(
NumberFormatException
e
)
{
throw
new
CGIClientException
(
"invalid port number
: "
+
param
);
throw
new
CGIClientException
(
"invalid port number
."
);
}
}
if
(
port
<=
0
||
port
>
0xFFFF
)
if
(
port
<=
0
||
port
>
0xFFFF
)
throw
new
CGIClientException
(
"invalid port: "
+
port
);
throw
new
CGIClientException
(
"invalid port: "
+
port
);
...
...
test/java/rmi/testlibrary/JavaVM.java
浏览文件 @
f81b55b2
...
@@ -133,6 +133,14 @@ public class JavaVM {
...
@@ -133,6 +133,14 @@ public class JavaVM {
return
TestLibrary
.
getExtraProperty
(
"jcov.options"
,
""
);
return
TestLibrary
.
getExtraProperty
(
"jcov.options"
,
""
);
}
}
public
void
start
(
Runnable
runnable
)
throws
IOException
{
if
(
runnable
==
null
)
{
throw
new
NullPointerException
(
"Runnable cannot be null."
);
}
start
();
new
JavaVMCallbackHandler
(
runnable
).
start
();
}
/**
/**
* Exec the VM as specified in this object's constructor.
* Exec the VM as specified in this object's constructor.
...
@@ -235,4 +243,35 @@ public class JavaVM {
...
@@ -235,4 +243,35 @@ public class JavaVM {
protected
Process
getVM
()
{
protected
Process
getVM
()
{
return
vm
;
return
vm
;
}
}
/**
* Handles calling the callback.
*/
private
class
JavaVMCallbackHandler
extends
Thread
{
Runnable
runnable
;
JavaVMCallbackHandler
(
Runnable
runnable
)
{
this
.
runnable
=
runnable
;
}
/**
* Wait for the Process to terminate and notify the callback.
*/
@Override
public
void
run
()
{
if
(
vm
!=
null
)
{
try
{
vm
.
waitFor
();
}
catch
(
InterruptedException
ie
)
{
// Restore the interrupted status
Thread
.
currentThread
().
interrupt
();
}
}
if
(
runnable
!=
null
)
{
runnable
.
run
();
}
}
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录