Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
eafdb3b6
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看板
提交
eafdb3b6
编写于
5月 22, 2013
作者:
D
dholmes
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8014814: (str) StringBuffer "null" is not appended
Reviewed-by: alanb
上级
243576f5
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
25 addition
and
5 deletion
+25
-5
src/share/classes/java/lang/StringBuffer.java
src/share/classes/java/lang/StringBuffer.java
+2
-4
test/java/lang/StringBuffer/ToStringCache.java
test/java/lang/StringBuffer/ToStringCache.java
+23
-1
未找到文件。
src/share/classes/java/lang/StringBuffer.java
浏览文件 @
eafdb3b6
...
@@ -335,10 +335,8 @@ import java.util.Arrays;
...
@@ -335,10 +335,8 @@ import java.util.Arrays;
* @since 1.5
* @since 1.5
*/
*/
@Override
@Override
public
StringBuffer
append
(
CharSequence
s
)
{
public
synchronized
StringBuffer
append
(
CharSequence
s
)
{
// Note, synchronization achieved via invocations of other StringBuffer methods after
toStringCache
=
null
;
// narrowing of s to specific type
// Ditto for toStringCache clearing
super
.
append
(
s
);
super
.
append
(
s
);
return
this
;
return
this
;
}
}
...
...
test/java/lang/StringBuffer/ToStringCache.java
浏览文件 @
eafdb3b6
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
*/
*/
/* @test
/* @test
* @bug 8013395
* @bug 8013395
8014814
* @summary Test StringBuffer.toString caching
* @summary Test StringBuffer.toString caching
*/
*/
...
@@ -199,6 +199,28 @@ public class ToStringCache {
...
@@ -199,6 +199,28 @@ public class ToStringCache {
b
=
sb
.
toString
();
b
=
sb
.
toString
();
checkUnequal
(
a
,
b
);
checkUnequal
(
a
,
b
);
// Extra checks that append(null) works correctly
sb
.
append
((
String
)
null
);
b
=
sb
.
toString
();
checkUnequal
(
a
,
b
);
a
=
b
;
sb
.
append
((
StringBuffer
)
null
);
b
=
sb
.
toString
();
checkUnequal
(
a
,
b
);
a
=
b
;
sb
.
append
((
StringBuilder
)
null
);
b
=
sb
.
toString
();
checkUnequal
(
a
,
b
);
a
=
b
;
sb
.
append
((
CharSequence
)
null
);
b
=
sb
.
toString
();
checkUnequal
(
a
,
b
);
a
=
b
;
// non-mutating methods
// non-mutating methods
// Reset to known value
// Reset to known value
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录