Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
sxychenjing
engine
提交
994531d3
E
engine
项目概览
sxychenjing
/
engine
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
994531d3
编写于
4月 08, 2021
作者:
M
Matej Knopp
提交者:
GitHub
4月 08, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Windows: Only terminate display for last instance (#25477)
上级
134f0a69
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
12 addition
and
1 deletion
+12
-1
shell/platform/windows/angle_surface_manager.cc
shell/platform/windows/angle_surface_manager.cc
+9
-1
shell/platform/windows/angle_surface_manager.h
shell/platform/windows/angle_surface_manager.h
+3
-0
未找到文件。
shell/platform/windows/angle_surface_manager.cc
浏览文件 @
994531d3
...
...
@@ -26,6 +26,8 @@ static void LogEglError(std::string message) {
namespace
flutter
{
int
AngleSurfaceManager
::
instance_count_
=
0
;
std
::
unique_ptr
<
AngleSurfaceManager
>
AngleSurfaceManager
::
Create
()
{
std
::
unique_ptr
<
AngleSurfaceManager
>
manager
;
manager
.
reset
(
new
AngleSurfaceManager
());
...
...
@@ -40,10 +42,12 @@ AngleSurfaceManager::AngleSurfaceManager()
egl_display_
(
EGL_NO_DISPLAY
),
egl_context_
(
EGL_NO_CONTEXT
)
{
initialize_succeeded_
=
Initialize
();
++
instance_count_
;
}
AngleSurfaceManager
::~
AngleSurfaceManager
()
{
CleanUp
();
--
instance_count_
;
}
bool
AngleSurfaceManager
::
InitializeEGL
(
...
...
@@ -200,7 +204,11 @@ void AngleSurfaceManager::CleanUp() {
}
if
(
egl_display_
!=
EGL_NO_DISPLAY
)
{
eglTerminate
(
egl_display_
);
// Display is reused between instances so only terminate display
// if destroying last instance
if
(
instance_count_
==
1
)
{
eglTerminate
(
egl_display_
);
}
egl_display_
=
EGL_NO_DISPLAY
;
}
}
...
...
shell/platform/windows/angle_surface_manager.h
浏览文件 @
994531d3
...
...
@@ -107,6 +107,9 @@ class AngleSurfaceManager {
// Requested dimensions for current surface
EGLint
surface_width_
=
0
;
EGLint
surface_height_
=
0
;
// Number of active instances of AngleSurfaceManager
static
int
instance_count_
;
};
}
// namespace flutter
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录