Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
c9d5ecb3
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看板
提交
c9d5ecb3
编写于
2月 27, 2013
作者:
B
bae
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8001034: Memory management improvements
Reviewed-by: mschoene, prr, jgodinez
上级
d497139d
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
17 addition
and
2 deletion
+17
-2
src/solaris/native/sun/awt/awt_GraphicsEnv.c
src/solaris/native/sun/awt/awt_GraphicsEnv.c
+4
-1
src/solaris/native/sun/awt/awt_GraphicsEnv.h
src/solaris/native/sun/awt/awt_GraphicsEnv.h
+3
-0
src/solaris/native/sun/java2d/x11/X11SurfaceData.c
src/solaris/native/sun/java2d/x11/X11SurfaceData.c
+10
-1
未找到文件。
src/solaris/native/sun/awt/awt_GraphicsEnv.c
浏览文件 @
c9d5ecb3
...
...
@@ -906,6 +906,8 @@ static jint canUseShmExt = UNSET_MITSHM;
static
jint
canUseShmExtPixmaps
=
UNSET_MITSHM
;
static
jboolean
xshmAttachFailed
=
JNI_FALSE
;
extern
int
mitShmPermissionMask
;
int
J2DXErrHandler
(
Display
*
display
,
XErrorEvent
*
xerr
)
{
int
ret
=
0
;
if
(
xerr
->
minor_code
==
X_ShmAttach
)
{
...
...
@@ -944,7 +946,8 @@ void TryInitMITShm(JNIEnv *env, jint *shmExt, jint *shmPixmaps) {
* we need to test that we can actually do XShmAttach.
*/
if
(
XShmQueryExtension
(
awt_display
))
{
shminfo
.
shmid
=
shmget
(
IPC_PRIVATE
,
0x10000
,
IPC_CREAT
|
0777
);
shminfo
.
shmid
=
shmget
(
IPC_PRIVATE
,
0x10000
,
IPC_CREAT
|
mitShmPermissionMask
);
if
(
shminfo
.
shmid
<
0
)
{
AWT_UNLOCK
();
J2dRlsTraceLn1
(
J2D_TRACE_ERROR
,
...
...
src/solaris/native/sun/awt/awt_GraphicsEnv.h
浏览文件 @
c9d5ecb3
...
...
@@ -47,6 +47,9 @@
#include <X11/extensions/shmproto.h>
#endif
#define MITSHM_PERM_COMMON (0666)
#define MITSHM_PERM_OWNER (0600)
extern
int
XShmQueryExtension
();
void
TryInitMITShm
(
JNIEnv
*
env
,
jint
*
shmExt
,
jint
*
shmPixmaps
);
...
...
src/solaris/native/sun/java2d/x11/X11SurfaceData.c
浏览文件 @
c9d5ecb3
...
...
@@ -89,6 +89,7 @@ static jclass xorCompClass;
jint
useMitShmExt
=
CANT_USE_MITSHM
;
jint
useMitShmPixmaps
=
CANT_USE_MITSHM
;
jint
forceSharedPixmaps
=
JNI_FALSE
;
int
mitShmPermissionMask
=
MITSHM_PERM_OWNER
;
/* Cached shared image, one for all surface datas. */
static
XImage
*
cachedXImage
;
...
...
@@ -119,6 +120,13 @@ jboolean XShared_initIDs(JNIEnv *env, jboolean allowShmPixmaps)
if
(
getenv
(
"NO_AWT_MITSHM"
)
==
NULL
&&
getenv
(
"NO_J2D_MITSHM"
)
==
NULL
)
{
char
*
force
;
char
*
permission
=
getenv
(
"J2D_MITSHM_PERMISSION"
);
if
(
permission
!=
NULL
)
{
if
(
strcmp
(
permission
,
"common"
)
==
0
)
{
mitShmPermissionMask
=
MITSHM_PERM_COMMON
;
}
}
TryInitMITShm
(
env
,
&
useMitShmExt
,
&
useMitShmPixmaps
);
if
(
allowShmPixmaps
)
{
...
...
@@ -536,7 +544,8 @@ XImage* X11SD_CreateSharedImage(X11SDOps *xsdo,
return
NULL
;
}
shminfo
->
shmid
=
shmget
(
IPC_PRIVATE
,
height
*
img
->
bytes_per_line
,
IPC_CREAT
|
0777
);
shmget
(
IPC_PRIVATE
,
height
*
img
->
bytes_per_line
,
IPC_CREAT
|
mitShmPermissionMask
);
if
(
shminfo
->
shmid
<
0
)
{
J2dRlsTraceLn1
(
J2D_TRACE_ERROR
,
"X11SD_SetupSharedSegment shmget has failed: %s"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录