Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Harfbuzz
提交
78c09bf2
T
Third Party Harfbuzz
项目概览
OpenHarmony
/
Third Party Harfbuzz
接近 2 年 前同步成功
通知
1
Star
18
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Harfbuzz
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
78c09bf2
编写于
10月 10, 2018
作者:
B
Behdad Esfahbod
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Move subtable array into lookup accel
上级
97e5913d
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
18 addition
and
14 deletion
+18
-14
src/hb-null.hh
src/hb-null.hh
+1
-1
src/hb-ot-layout-gsubgpos.hh
src/hb-ot-layout-gsubgpos.hh
+11
-3
src/hb-ot-layout.cc
src/hb-ot-layout.cc
+6
-10
未找到文件。
src/hb-null.hh
浏览文件 @
78c09bf2
...
...
@@ -36,7 +36,7 @@
/* Global nul-content Null pool. Enlarge as necessary. */
#define HB_NULL_POOL_SIZE
264
#define HB_NULL_POOL_SIZE
512
extern
HB_INTERNAL
hb_vector_size_impl_t
const
_hb_NullPool
[(
HB_NULL_POOL_SIZE
+
sizeof
(
hb_vector_size_impl_t
)
-
1
)
/
sizeof
(
hb_vector_size_impl_t
)];
...
...
src/hb-ot-layout-gsubgpos.hh
浏览文件 @
78c09bf2
...
...
@@ -286,7 +286,7 @@ struct hb_get_subtables_context_t :
hb_apply_func_t
apply_func
;
};
typedef
hb_
auto_t
<
hb_vector_t
<
hb_applicable_t
>
>
array_t
;
typedef
hb_
vector_t
<
hb_applicable_t
,
2
>
array_t
;
/* Dispatch interface. */
inline
const
char
*
get_name
(
void
)
{
return
"GET_SUBTABLES"
;
}
...
...
@@ -2619,14 +2619,22 @@ struct hb_ot_layout_lookup_accelerator_t
{
digest
.
init
();
lookup
.
add_coverage
(
&
digest
);
subtables
.
init
();
OT
::
hb_get_subtables_context_t
c_get_subtables
(
subtables
);
lookup
.
dispatch
(
&
c_get_subtables
);
}
inline
void
fini
(
void
)
{
subtables
.
fini
();
}
inline
void
fini
(
void
)
{}
inline
bool
may_have
(
hb_codepoint_t
g
)
const
{
return
digest
.
may_have
(
g
);
}
p
rivate
:
p
ublic
:
hb_set_digest_t
digest
;
hb_get_subtables_context_t
::
array_t
subtables
;
};
struct
GSUBGPOS
...
...
src/hb-ot-layout.cc
浏览文件 @
78c09bf2
...
...
@@ -1114,11 +1114,11 @@ struct GPOSProxy
static
inline
bool
apply_forward
(
OT
::
hb_ot_apply_context_t
*
c
,
const
OT
::
hb_ot_layout_lookup_accelerator_t
&
accel
,
const
OT
::
hb_get_subtables_context_t
::
array_t
&
subtables
)
const
OT
::
hb_ot_layout_lookup_accelerator_t
&
accel
)
{
bool
ret
=
false
;
hb_buffer_t
*
buffer
=
c
->
buffer
;
const
OT
::
hb_get_subtables_context_t
::
array_t
&
subtables
=
accel
.
subtables
;
while
(
buffer
->
idx
<
buffer
->
len
&&
buffer
->
successful
)
{
bool
applied
=
false
;
...
...
@@ -1144,11 +1144,11 @@ apply_forward (OT::hb_ot_apply_context_t *c,
static
inline
bool
apply_backward
(
OT
::
hb_ot_apply_context_t
*
c
,
const
OT
::
hb_ot_layout_lookup_accelerator_t
&
accel
,
const
OT
::
hb_get_subtables_context_t
::
array_t
&
subtables
)
const
OT
::
hb_ot_layout_lookup_accelerator_t
&
accel
)
{
bool
ret
=
false
;
hb_buffer_t
*
buffer
=
c
->
buffer
;
const
OT
::
hb_get_subtables_context_t
::
array_t
&
subtables
=
accel
.
subtables
;
do
{
if
(
accel
.
may_have
(
buffer
->
cur
().
codepoint
)
&&
...
...
@@ -1183,10 +1183,6 @@ apply_string (OT::hb_ot_apply_context_t *c,
c
->
set_lookup_props
(
lookup
.
get_props
());
OT
::
hb_get_subtables_context_t
::
array_t
subtables
;
OT
::
hb_get_subtables_context_t
c_get_subtables
(
subtables
);
lookup
.
dispatch
(
&
c_get_subtables
);
if
(
likely
(
!
lookup
.
is_reverse
()))
{
/* in/out forward substitution/positioning */
...
...
@@ -1195,7 +1191,7 @@ apply_string (OT::hb_ot_apply_context_t *c,
buffer
->
idx
=
0
;
bool
ret
;
ret
=
apply_forward
(
c
,
accel
,
subtables
);
ret
=
apply_forward
(
c
,
accel
);
if
(
ret
)
{
if
(
!
Proxy
::
inplace
)
...
...
@@ -1211,7 +1207,7 @@ apply_string (OT::hb_ot_apply_context_t *c,
buffer
->
remove_output
();
buffer
->
idx
=
buffer
->
len
-
1
;
apply_backward
(
c
,
accel
,
subtables
);
apply_backward
(
c
,
accel
);
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录