Commit Graph

2521 Commits

Author SHA1 Message Date
openharmony_ci c50bf4b0c4 !19695 merge master0626 into master
代码优化

Created-by: dsz2025
Commit-by: duansizhao
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19695
2026-07-02 10:21:24 +08:00
wlh2624_DS dfdecbef32 log cut
Co-Authored-By: agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2026-06-29 17:15:40 +08:00
openharmony_ci c62dd2ba5d !19690 merge cliClonge-1 into master
pc claw支持拉起分身应用

Created-by: lidongrui
Commit-by: DESKTOP-UGVMD4B\DawnComing
Merged-by: openharmony_ci
Description: 
**IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     √     |
| 成员变量进行赋值或创建需要排查并发                               |    √     |
| 谨慎在lambda表达式中使用引用捕获                                |    √      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |    √      |
| map\vector\list\set等stl模板类使用时需要排查并发                |    √      |
| 谨慎考虑加锁范围                                               |    √      |
| 在IPC通信中谨慎使用同步通信方式                                 |    √      |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    √      |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    √      |
| 禁止多个独立创建的智能指针管理同一地址                           |     √     |
| 禁止在析构函数中抛异步任务                                      |     √     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |     √     |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     √     |
| 禁止接口返回局部变量引用                                        |    √      |
| 禁止在信号函数中加锁                                            |    √      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    √      |
| 禁止将同一个cpp编译在不同的so中                                 |     √     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |     √     |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    √      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |     √     |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     √     |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     √     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |    √      |
| readParcelable获取的对象使用前需要判空                            |    √      |
| 分配和释放内存的函数需要成对出现                                   |    √      |
| 申请内存后异常退出前需要及时进行内存释放                            |    √      |
| 内存申请前必须对内存大小进行合法性校验                              |    √      |
| 内存分配后必须判断是否成功                                         |    √      |
| 禁止使用realloc、alloca函数                                       |    √      |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |     √     |
| 禁止打印内存地址                                                  |     √     |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    √      |
| 禁止对有符号整数进行位操作符运算                                    |    √      |
| 禁止对指针进行逻辑或位运算                                         |     √     |
| 循环次数如果收外部数据控制,需要检验其合法性                         |     √     |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     √     |
| 谨慎使用不可重入函数                                               |     √     |
| 必须检查安全函数的返回值,并进行正确处理                             |     √     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     √     |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19690
2026-06-28 01:07:01 +08:00
openharmony_ci 39d3599a25 !19688 merge child_debug_0625 into master
子进程不注册pid不进行attach

Created-by: renjh5496
Commit-by: renjh5496
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/15526

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19688
2026-06-27 20:37:06 +08:00
DESKTOP-UGVMD4B\DawnComing 455151f902 pc claw支持拉起分身应用
Signed-off-by: lidongrui <lidongrui3@huawei.com>
Co-Authored-By: Agent
2026-06-27 19:48:15 +08:00
duansizhao 5250f45302 代码优化
Signed-off-by: duansizhao <duansizhao@huawei.com>
Change-Id: I7450ddca3f3577cf9d24ac10e2640cd523e4d664
2026-06-26 18:01:54 +08:00
renjh5496 d1d6ff4501 子进程不注册pid不进行attach
Co-Authored-By: Agent
Signed-off-by: renjh5496 <renjianhao@h-partners.com>
2026-06-25 21:14:02 +08:00
denganliang 8f6f72b17c fix: update GetMemLeakStringFunc interface to prevent data truncation
The GetMemLeakStringFunc interface now outputs actual data length via int* parameter to avoid truncation when char* contains null bytes. Updated GetDumpResult to use assign(buf, outLen) and GetSnapshot to use write(fd, buf, outLen) instead of strlen-based length calculation.

Co-Authored-By: Agent
Signed-off-by: denganliang <denganliang3@h-partners.com>
Change-Id: Ia681d4abffcfaefa3cc93cc59559470c737425b0
2026-06-25 12:25:09 +08:00
openharmony_ci d28c6739b9 !19658 merge feat/jsheap-languageenv-v2 into master
feat: support languageEnv for jsheap snapshot dump with UT coverage

Created-by: denganliang
Commit-by: denganliang
Merged-by: openharmony_ci
Description: ## 修改说明

- 为 JsHeap snapshot dump 添加 languageEnv 参数(dynamic/static/hybrid),使 ETS runtime 也能 dump 堆快照
- 移除 snapshot dump 路径的 JS-only 限制
- 添加完整的 UT 覆盖,确保所有分支都被测试到

## 关联Issue

Fixes #15499

## 验证

- native_daemon_ut:待验证

See merge request: openharmony/ability_ability_runtime!19658
2026-06-24 14:46:22 +08:00
acdemicJava 476e4c2620 优化appfreeze代码
Co-Authored-By: Agent
Signed-off-by: acdemicJava <yinhuiling@h-partners.com>
2026-06-23 10:36:18 +08:00
denganliang 382f8fe2e7 feat: support languageEnv for jsheap snapshot dump with UT coverage
Add languageEnv parameter (dynamic/static/hybrid) for JsHeap snapshot dump,
enabling ETS runtime to also dump heap snapshots. Remove JS-only restriction
on snapshot dump path. Add UT coverage for all branches.

Co-Authored-By: Agent
Signed-off-by: denganliang <denganliang3@h-partners.com>
Change-Id: I9784465f1def0d74165d3d1804a36a9b489fe0e0
2026-06-22 19:50:31 +08:00
openharmony_ci 02cfc9ac58 !19635 merge feature-0618 into master
优化appfreeze屏蔽

Created-by: acdemicJava
Commit-by: acdemicJava
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/15490
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19635
2026-06-22 17:26:22 +08:00
acdemicJava 3739a97673 优化appfreeze屏蔽
Co-Authored-By: Agent
Signed-off-by: acdemicJava <yinhuiling@h-partners.com>
2026-06-22 13:01:19 +08:00
acdemicJava a9d84cd946 修改GC时间区间判断
Co-Authored-By: Agent
Signed-off-by: acdemicJava <yinhuiling@h-partners.com>
2026-06-18 16:54:16 +08:00
openharmony_ci c60aef61e4 !19589 merge pixelmap into master
image_native op

Created-by: zivzhen
Commit-by: wangzhen
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   ok     |
| 成员变量进行赋值或创建需要排查并发                               |      ok  |
| 谨慎在lambda表达式中使用引用捕获                                |      ok  |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |  ok      |
| map\vector\list\set等stl模板类使用时需要排查并发                |      ok  |
| 谨慎考虑加锁范围                                               |       ok |
| 在IPC通信中谨慎使用同步通信方式                                 |   ok     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    ok    |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |     ok   |
| 禁止多个独立创建的智能指针管理同一地址                           |     ok   |
| 禁止在析构函数中抛异步任务                                      |    ok    |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |    ok    |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     ok   |
| 禁止接口返回局部变量引用                                        |     ok   |
| 禁止在信号函数中加锁                                            |    ok   |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    ok    |
| 禁止将同一个cpp编译在不同的so中                                 |    ok    |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |      ok |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    ok    |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    ok    |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     ok   |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |    ok    |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |     ok   |
| readParcelable获取的对象使用前需要判空                            |      ok  |
| 分配和释放内存的函数需要成对出现                                   |    ok    |
| 申请内存后异常退出前需要及时进行内存释放                            |    ok    |
| 内存申请前必须对内存大小进行合法性校验                              |    ok    |
| 内存分配后必须判断是否成功                                         |     ok   |
| 禁止使用realloc、alloca函数                                       |     ok   |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    ok    |
| 禁止打印内存地址                                                  |     ok   |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    ok    |
| 禁止对有符号整数进行位操作符运算                                    |    ok    |
| 禁止对指针进行逻辑或位运算                                         |     ok   |
| 循环次数如果收外部数据控制,需要检验其合法性                         |    ok    |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     ok   |
| 谨慎使用不可重入函数                                               |      ok  |
| 必须检查安全函数的返回值,并进行正确处理                             |   ok     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |      ok  |

**TDD Result**:
pass
**XTS Result**:
pass


### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19589
2026-06-17 16:58:30 +08:00
openharmony_ci 883299b99d !19612 merge master into master
MainThread set actv_eager_fpu

Created-by: junkangRen
Commit-by: r00878997
Merged-by: openharmony_ci
Description: **IssueNo**:https://gitcode.com/openharmony/ability_ability_runtime/issues/15448

**Description**:MainThread 使能 actv_eager_fpu

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |✔          |
| 成员变量进行赋值或创建需要排查并发                               |✔          |
| 谨慎在lambda表达式中使用引用捕获                                |✔          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |✔          |
| map\vector\list\set等stl模板类使用时需要排查并发                |✔          |
| 谨慎考虑加锁范围                                               |✔          |
| 在IPC通信中谨慎使用同步通信方式                                 |✔          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |✔          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |✔          |
| 禁止多个独立创建的智能指针管理同一地址                           |✔          |
| 禁止在析构函数中抛异步任务                                      |✔          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |✔          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |✔          |
| 禁止接口返回局部变量引用                                        |✔          |
| 禁止在信号函数中加锁                                            |✔          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |✔          |
| 禁止将同一个cpp编译在不同的so中                                 |✔          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |✔          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |✔          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |✔          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |✔          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |✔          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |✔          |
| readParcelable获取的对象使用前需要判空                            |✔          |
| 分配和释放内存的函数需要成对出现                                   |✔          |
| 申请内存后异常退出前需要及时进行内存释放                            |✔          |
| 内存申请前必须对内存大小进行合法性校验                              |✔          |
| 内存分配后必须判断是否成功                                         |✔          |
| 禁止使用realloc、alloca函数                                       |✔          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |✔          |
| 禁止打印内存地址                                                  |✔          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |✔          |
| 禁止对有符号整数进行位操作符运算                                    |✔          |
| 禁止对指针进行逻辑或位运算                                         |✔          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |✔          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |✔          |
| 谨慎使用不可重入函数                                               |✔          |
| 必须检查安全函数的返回值,并进行正确处理                             |✔          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |✔          |

**TDD Result**:
![tdd.png](https://raw.gitcode.com/user-images/assets/4421702/0aeb3093-4613-468f-a54a-ea0a1ab818eb/tdd.png 'tdd.png')
**XTS Result**:
![xts.png](https://raw.gitcode.com/user-images/assets/4421702/61724d81-6b66-45cf-a603-9125469fa42a/xts.png 'xts.png')
### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19612
2026-06-17 11:17:36 +08:00
wangzhen 1de71622dd dynamic load image_native
Co-Authored-By: Agent

Signed-off-by: wangzhen <wangzhen416@huawei.com>

🤖‍ AI[98%] 👌 AI Adopted[98%] 🧑 Human[2%]

🤖‍ AI[0%] 👌 AI Adopted[0%] 🧑 Human[100%]

Change-Id: I0f5ee21f0ea499d0abc9a0690249f040cb715805
2026-06-16 14:38:54 +08:00
openharmony_ci 2dd69880dd !19518 merge master into master
修改适配

Created-by: xxyyyy11
Commit-by: xyy
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/global_resource_management/issues/887

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [x] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19518
2026-06-15 15:44:56 +08:00
r00878997 2a2cf036fc MainThread set actv_eager_fpu
Signed-off-by: junkangRen <renjunkang@huawei.com>
2026-06-11 20:28:19 +08:00
openharmony_ci 4b7a3e3352 !19541 merge 65runtime into master
fix mem leak

Created-by: wlh2624_DS
Commit-by: wlh2624_DS
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/15415
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19541
2026-06-09 20:41:38 +08:00
openharmony_ci e0a39f96b2 !19551 merge fix_err into master
add InnerErrorMsg

Created-by: ProfaneAria
Commit-by: 任国军
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/accbbaf4-d130-4103-8525-0e8b594d7c0e/image.png 'image.png')
**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19551
2026-06-08 16:13:39 +08:00
任国军 9b11df5846 add InnerErrorMsg
Co-Authored-By: Agent
Signed-off-by: 任国军 <renguojun1@h-partners.com>

🤖‍ AI[0%] 👌 AI Adopted[0%] 🧑 Human[100%]
2026-06-07 17:13:11 +08:00
openharmony_ci 6d7d923411 !19526 merge car_appInde into master
extension分身场景使用

Created-by: yewei0794
Commit-by: yewei0794
Merged-by: openharmony_ci
Description: **IssueNo**:https://gitcode.com/openharmony/ability_ability_runtime/issues/15404

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |      Y    |
| 成员变量进行赋值或创建需要排查并发                               |    Y      |
| 谨慎在lambda表达式中使用引用捕获                                |    Y      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |      Y    |
| map\vector\list\set等stl模板类使用时需要排查并发                |      Y    |
| 谨慎考虑加锁范围                                               |    Y      |
| 在IPC通信中谨慎使用同步通信方式                                 |      Y    |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |   Y       |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |     Y     |
| 禁止多个独立创建的智能指针管理同一地址                           |    Y      |
| 禁止在析构函数中抛异步任务                                      |     Y     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |      Y    |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |    Y      |
| 禁止接口返回局部变量引用                                        |    Y      |
| 禁止在信号函数中加锁                                            |     Y     |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    Y      |
| 禁止将同一个cpp编译在不同的so中                                 |     Y     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |      Y    |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |   Y       |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    Y      |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    Y      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     Y     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |      Y    |
| readParcelable获取的对象使用前需要判空                            |      Y    |
| 分配和释放内存的函数需要成对出现                                   |      Y    |
| 申请内存后异常退出前需要及时进行内存释放                            |    Y      |
| 内存申请前必须对内存大小进行合法性校验                              |     Y     |
| 内存分配后必须判断是否成功                                         |      Y    |
| 禁止使用realloc、alloca函数                                       |     Y     |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    Y      |
| 禁止打印内存地址                                                  |      Y    |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |   Y       |
| 禁止对有符号整数进行位操作符运算                                    |     Y     |
| 禁止对指针进行逻辑或位运算                                         |     Y     |
| 循环次数如果收外部数据控制,需要检验其合法性                         |     Y     |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     Y     |
| 谨慎使用不可重入函数                                               |    Y      |
| 必须检查安全函数的返回值,并进行正确处理                             |     Y     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     Y     |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19526
2026-06-06 18:30:58 +08:00
yewei0794 44b91812de extension分身场景使用
Signed-off-by: yewei0794 <weiyejxnf@163.com>

🤖‍ AI[100%] 👌 AI Adopted[100%] 🧑 Human[0%]
Co-authored-by: Agent

Change-Id: If4bc6b09c1804c5685610f81d47ebb7a1ed9904a
2026-06-06 16:23:03 +08:00
wlh2624_DS b065d74f83 fix mem leak
Co-Authored-By: Agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
Change-Id: I05b9ae2d11ff7c439fddb61f09698bb18b225d18

Change-Id: I3a4bd79e6cd073f9e99c8832ad94b8e2b3b9b56d
2026-06-05 09:45:29 +08:00
blueCodeBaixue 60a3c2c172 Appfreeze增加GC和io信息
Co-Authored-By: Agent
Signed-off-by: blueCodeBaixue <baixue64@h-partners.com>
2026-06-04 21:46:43 +08:00
xyy fc19ee58b8 test
Signed-off-by: xyy <xiongyangyang1@126.com>
2026-06-03 15:32:56 +08:00
openharmony_ci 9cff4000c7 !19422 merge aot_modify_hsp_sign into master
AOT: modify ets runtime to load host-orivate HSP AOT

Created-by: wanzixuan330
Commit-by: wanzixuan330
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/bundlemanager_bundle_framework/issues/9430
**Description**:
应用间HSP的安装时AOT修改为跟随宿主HAP的AOT,ets runtime的post fork阶段查找HSP的落盘an路径发生改变
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   pass       |
| 成员变量进行赋值或创建需要排查并发                               |  pass        |
| 谨慎在lambda表达式中使用引用捕获                                |    pass      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |     pass     |
| map\vector\list\set等stl模板类使用时需要排查并发                |    pass      |
| 谨慎考虑加锁范围                                               |   pass       |
| 在IPC通信中谨慎使用同步通信方式                                 |     pass     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    pass      |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    pass      |
| 禁止多个独立创建的智能指针管理同一地址                           |     pass
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |   pass       |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     pass     |
| 禁止接口返回局部变量引用                                        |   pass       |
| 禁止在信号函数中加锁                                            |    pass      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    pass      |
| 禁止将同一个cpp编译在不同的so中                                 |    pass      |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |    pass      |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    pass      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |   pass       |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    pass      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |   pass       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |   pass       |
| readParcelable获取的对象使用前需要判空                            |     pass     |
| 分配和释放内存的函数需要成对出现                                   |   pass      |
| 申请内存后异常退出前需要及时进行内存释放                            |      pass    |
| 内存申请前必须对内存大小进行合法性校验                              |     pass     |
| 内存分配后必须判断是否成功                                         |     pass     |
| 禁止使用realloc、alloca函数                                       |   pass       |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |   pass       |
| 禁止打印内存地址                                                  |    pass      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |   pass       |
| 禁止对有符号整数进行位操作符运算                                    |   pass       |
| 禁止对指针进行逻辑或位运算                                         |   pass       |
| 循环次数如果收外部数据控制,需要检验其合法性                         |   pass       |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    pass      |
| 谨慎使用不可重入函数                                               |     pass     |
| 必须检查安全函数的返回值,并进行正确处理                             |    pass      |
| 禁止仅通过TokenType类型判断绕过权限校验                             |    pass      |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19422
2026-06-02 20:46:17 +08:00
openharmony_ci 09cd8823e7 !19502 merge fix_uri into master
QueryExtensionAbilityInfoByUri替换为QueryExtensionAbilityInfoByUriOptimal

Created-by: zhangyuhang72
Commit-by: zhangyuhang72
Merged-by: openharmony_ci
Description: **IssueNo**:   https://gitcode.com/openharmony/ability_ability_runtime/issues/15388

**Description**: QueryExtensionAbilityInfoByUri替换为QueryExtensionAbilityInfoByUriOptimal

**稳定性自检:** Y
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:** Y
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**: PASS

**XTS Result**: PASS

### 是否已执行L0用例
- [Y] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19502
2026-06-02 15:57:20 +08:00
wanzixuan330 a95306e217 AOT: modify ets runtime to load host-orivate HSP AOT
Issue: https://gitcode.com/openharmony/bundlemanager_bundle_framework/issues/9430
Co-Authored-By: Agent
Signed-off-by: wanzixuan330 <wanzixuan@huawei.com>
2026-06-02 11:46:43 +08:00
openharmony_ci 44937e41ef !19393 merge abilitystage into master
abilitystage set launchElement

Created-by: hanchen45
Commit-by: hanchen45
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     pass     |
| 成员变量进行赋值或创建需要排查并发                               |   pass       |
| 谨慎在lambda表达式中使用引用捕获                                |   pass       |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |       pass   |
| map\vector\list\set等stl模板类使用时需要排查并发                |   pass       |
| 谨慎考虑加锁范围                                               |     pass     |
| 在IPC通信中谨慎使用同步通信方式                                 |      pass    |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |     pass     |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |   pass       |
| 禁止多个独立创建的智能指针管理同一地址                           | pass         |
| 禁止在析构函数中抛异步任务                                      |     pass     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |   pass       |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |   pass       |
| 禁止接口返回局部变量引用                                        |    pass      |
| 禁止在信号函数中加锁                                            |     pass     |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |      pass    |
| 禁止将同一个cpp编译在不同的so中                                 |      pass    |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |     pass     |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |       pass   |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    pass      |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    pass      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     pass     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |      pass    |
| readParcelable获取的对象使用前需要判空                            |    pass      |
| 分配和释放内存的函数需要成对出现                                   |    pass      |
| 申请内存后异常退出前需要及时进行内存释放                            |    pass      |
| 内存申请前必须对内存大小进行合法性校验                              |     pass     |
| 内存分配后必须判断是否成功                                         |     pass     |
| 禁止使用realloc、alloca函数                                       |   pass       |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |     pass     |
| 禁止打印内存地址                                                  |    pass      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |   pass       |
| 禁止对有符号整数进行位操作符运算                                    |      pass    |
| 禁止对指针进行逻辑或位运算                                         |    pass      |
| 循环次数如果收外部数据控制,需要检验其合法性                         |       pass   |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    pass      |
| 谨慎使用不可重入函数                                               |       pass   |
| 必须检查安全函数的返回值,并进行正确处理                             |    pass      |
| 禁止仅通过TokenType类型判断绕过权限校验                             |    pass      |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19393
2026-06-02 10:12:40 +08:00
openharmony_ci 5b33bd4b85 !19485 merge fixKartun into master
重构MemDump回调传递链路,DumpMem内部完成回调上报

Created-by: wang_jun_long
Commit-by: wang_jun_long
Merged-by: openharmony_ci
Description: ## 变更说明

将 MemDump 回调传递链路重构为 ScheduleMem → HandleMem → DumpRuntimeHelper::DumpMem 内部完成回调上报。

### Commits

- refactor: move mem dump callback reporting to DumpMem internal (05b838ad9a)

### 变更文件

| 文件 | 类型 |
|------|------|
| frameworks/native/appkit/app/dump_runtime_helper.cpp | 修改 |
| frameworks/native/appkit/app/main_thread.cpp | 修改 |
| interfaces/kits/native/appkit/app/dump_runtime_helper.h | 修改 |
| interfaces/kits/native/appkit/app/main_thread.h | 修改 |
| test/unittest/frameworks_kits_appkit_native_test/dump_runtime_helper_test.cpp | 修改 |

### 变更详情

1. ScheduleMem 不再调用 ReportDumpMemResult,只传 callback 给 HandleMem
2. HandleMem 签名改为接收 callback 参数
3. DumpMem 内部定义 dumpResult,完成 dump 后通过 AppMgrClient::ReportDumpMemResult 上报回调
4. NATIVE 场景使用 std::thread 起子线程异步执行,不阻塞主线程
5. 测试用例同步更新调用签名

关联 Issue: #15376

See merge request: openharmony/ability_ability_runtime!19485
2026-06-01 15:29:46 +08:00
hanchen45 18158d3448 abilitystage set launchElement
Co-Authored-By: Agent

Signed-off-by: hanchen45 <wanghanchen1@huawei.com>
2026-06-01 09:37:16 +08:00
zhangyuhang72 8006d5f3bf QueryExtensionAbilityInfoByUri替换为QueryExtensionAbilityInfoByUriOptimal
Co-Authored-By:Agent

Signed-off-by: zhangyuhang72 <zhangyuhang72@h-partners.com>

🤖‍ AI[97%] 👌 AI Adopted[97%] 🧑 Human[3%]
Co-authored-by: claude (unknown) <ai@local>

Change-Id: I5860c431627aeb551b7051f1bb9bf6f3ea884042
2026-05-30 18:40:19 +08:00
openharmony_ci 721bdb0b04 !19435 merge master into master
decouple dump js

Created-by: huanghan18
Commit-by: huanghan18
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:
重构代码,arkweb dump与hidumper功能解耦
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     不涉及     |
| 成员变量进行赋值或创建需要排查并发                               |   不涉及       |
| 谨慎在lambda表达式中使用引用捕获                                |     不涉及     |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |    不涉及      |
| map\vector\list\set等stl模板类使用时需要排查并发                |    不涉及      |
| 谨慎考虑加锁范围                                               |    不涉及      |
| 在IPC通信中谨慎使用同步通信方式                                 |     不涉及     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |     不涉及     |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    不涉及      |
| 禁止多个独立创建的智能指针管理同一地址                           |    不涉及      |
| 禁止在析构函数中抛异步任务                                      |   不涉及       |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |    不涉及      |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |    不涉及      |
| 禁止接口返回局部变量引用                                        |    不涉及      |
| 禁止在信号函数中加锁                                            |    不涉及      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    不涉及      |
| 禁止将同一个cpp编译在不同的so中                                 |      不涉及    |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |      不涉及    |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |     不涉及     |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    不涉及      |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |   不涉及       |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |    不涉及      |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |    ok      |
| readParcelable获取的对象使用前需要判空                            |    不涉及      |
| 分配和释放内存的函数需要成对出现                                   |    不涉及      |
| 申请内存后异常退出前需要及时进行内存释放                            |     不涉及     |
| 内存申请前必须对内存大小进行合法性校验                              |    不涉及      |
| 内存分配后必须判断是否成功                                         |    不涉及      |
| 禁止使用realloc、alloca函数                                       |    不涉及      |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |   不涉及       |
| 禁止打印内存地址                                                  |   不涉及       |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |     不涉及     |
| 禁止对有符号整数进行位操作符运算                                    |     不涉及     |
| 禁止对指针进行逻辑或位运算                                         |    不涉及      |
| 循环次数如果收外部数据控制,需要检验其合法性                         |   不涉及       |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    不涉及      |
| 谨慎使用不可重入函数                                               |     不涉及     |
| 必须检查安全函数的返回值,并进行正确处理                             |     不涉及     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |      不涉及    |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19435
2026-05-30 15:41:30 +08:00
openharmony_ci 96c5115c95 !19426 merge carclone into master
AppClone for multi account

Created-by: zivzhen
Commit-by: wangzhen
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   ok     |
| 成员变量进行赋值或创建需要排查并发                               |      ok  |
| 谨慎在lambda表达式中使用引用捕获                                |      ok  |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |  ok      |
| map\vector\list\set等stl模板类使用时需要排查并发                |      ok  |
| 谨慎考虑加锁范围                                               |       ok |
| 在IPC通信中谨慎使用同步通信方式                                 |   ok     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    ok    |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |     ok   |
| 禁止多个独立创建的智能指针管理同一地址                           |     ok   |
| 禁止在析构函数中抛异步任务                                      |    ok    |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |    ok    |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     ok   |
| 禁止接口返回局部变量引用                                        |     ok   |
| 禁止在信号函数中加锁                                            |    ok   |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    ok    |
| 禁止将同一个cpp编译在不同的so中                                 |    ok    |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |      ok |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    ok    |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    ok    |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     ok   |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |    ok    |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |     ok   |
| readParcelable获取的对象使用前需要判空                            |      ok  |
| 分配和释放内存的函数需要成对出现                                   |    ok    |
| 申请内存后异常退出前需要及时进行内存释放                            |    ok    |
| 内存申请前必须对内存大小进行合法性校验                              |    ok    |
| 内存分配后必须判断是否成功                                         |     ok   |
| 禁止使用realloc、alloca函数                                       |     ok   |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    ok    |
| 禁止打印内存地址                                                  |     ok   |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    ok    |
| 禁止对有符号整数进行位操作符运算                                    |    ok    |
| 禁止对指针进行逻辑或位运算                                         |     ok   |
| 循环次数如果收外部数据控制,需要检验其合法性                         |    ok    |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     ok   |
| 谨慎使用不可重入函数                                               |      ok  |
| 必须检查安全函数的返回值,并进行正确处理                             |   ok     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |      ok  |

**TDD Result**:
pass
**XTS Result**:
pass

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19426
2026-05-30 15:23:35 +08:00
huanghan18 52a70544f8 decouple dump js
Co-Authored-By: Agent
Signed-off-by: huanghan18 <huanghan18@huawei.com>
2026-05-30 10:51:03 +08:00
wangzhen 1947b39687 Code review
Co-Authored-By: Agent

Signed-off-by: wangzhen <wangzhen416@huawei.com>

🤖‍ AI[57%] 👌 AI Adopted[57%] 🧑 Human[43%]

Change-Id: I58e2d8f62919c4d83b28816e23d2f6750b2fc8bb
2026-05-30 09:23:21 +08:00
wang_jun_long 7c93e914cd refactor: move mem dump callback reporting to DumpMem internal
Co-Authored-By: Agent
Signed-off-by: wang_jun_long <wangjunlong8@h-partners.com>
2026-05-29 15:31:38 +08:00
openharmony_ci 7219648980 !19444 merge master into master
适配快启 DFX 能力

Created-by: gcw_0iNYI5ye
Commit-by: gcw_0iNYI5ye
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [x] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19444
2026-05-29 10:03:00 +08:00
wangzhen fd3ba90f77 AppClone for account
Co-Authored-By: Agent

Signed-off-by: wangzhen <wangzhen416@huawei.com>

🤖‍ AI[80%] 👌 AI Adopted[80%] 🧑 Human[20%]
Co-authored-by: claude (glm-5.1) <ai@local>

Change-Id: Iab06be120e73f5b345d74b0f159796fd3fcca85d
2026-05-28 20:22:51 +08:00
openharmony_ci 12ae2ec69e !18826 merge complete_InteropAbilityLifecycleCallback into master
complete InteropAbilityLifecycleCallback

Created-by: renjh5496
Commit-by: renjh5496
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/14861
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |    pass      |
| 成员变量进行赋值或创建需要排查并发                               |     pass     |
| 谨慎在lambda表达式中使用引用捕获                                |      pass    |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               | pass         |
| map\vector\list\set等stl模板类使用时需要排查并发                |    pass    |
| 谨慎考虑加锁范围                                               |        pass  |
| 在IPC通信中谨慎使用同步通信方式                                 |  pass        |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |      pass    |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    pass      |
| 禁止多个独立创建的智能指针管理同一地址                           |        pass  |
| 禁止在析构函数中抛异步任务                                      |     pass     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             | pass         |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |      pass    |
| 禁止接口返回局部变量引用                                        |     pass     |
| 禁止在信号函数中加锁                                            |   pass       |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |   pass       |
| 禁止将同一个cpp编译在不同的so中                                 |   pass       |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |     pass     |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |  pass        |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |      pass    |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |      pass    |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |   pass       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  | pass        |
| readParcelable获取的对象使用前需要判空                            |      pass    |
| 分配和释放内存的函数需要成对出现                                   |   pass       |
| 申请内存后异常退出前需要及时进行内存释放                            |   pass       |
| 内存申请前必须对内存大小进行合法性校验                              |      pass    |
| 内存分配后必须判断是否成功                                         |      pass    |
| 禁止使用realloc、alloca函数                                       |        pass  |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |     pass     |
| 禁止打印内存地址                                                  |   pass       |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |     pass     |
| 禁止对有符号整数进行位操作符运算                                    |     pass     |
| 禁止对指针进行逻辑或位运算                                         |        pass  |
| 循环次数如果收外部数据控制,需要检验其合法性                         |     pass    |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |  pass        |
| 谨慎使用不可重入函数                                               |     pass     |
| 必须检查安全函数的返回值,并进行正确处理                             |     pass     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |      pass    |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18826
2026-05-28 15:26:59 +08:00
gcw_0iNYI5ye d13a27756d refactor: 拆分 forkall debug 启动延迟逻辑到独立 helper
Signed-off-by: gcw_0iNYI5ye <hefeng60@huawei.com>
Co-Authored-By: Agent
2026-05-28 10:05:02 +08:00
gcw_0iNYI5ye 58ad2a0216 feat: debug 应用放行机制
Signed-off-by: gcw_0iNYI5ye <hefeng60@huawei.com>
Co-Authored-By: <jiangchengqi1@huawei.com>
2026-05-28 10:01:34 +08:00
wlh2624_DS 50cb50dca6 add log
Co-Authored-By: Agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2026-05-26 22:12:12 +08:00
renjh5496 dea7dae9a3 complete InteropAbilityLifecycleCallback
Co-Authored-By: ya
Signed-off-by: renjh5496 <renjianhao@h-partners.com>
2026-05-26 15:14:07 +08:00
xiatian a1df92f154 新增abilityV2接口
Signed-off-by: xiatian <xiatian44@huawei.com>
Co-Authored-By: Agent
Change-Id: Ie1ae0246a8dc2fe4db7050826c5361a735c7d6bd
2026-05-25 10:53:36 +08:00
openharmony_ci 576ed372bb !19413 merge fix-leakobj-empty-check into master
fix: 防止GetDumpResult将空字符串赋值给dumpResult

Created-by: denganliang
Commit-by: denganliang
Merged-by: openharmony_ci
Description: ## 修改说明

- 防止 GetDumpResult 将 malloc 分配但内容为空字符串的 buf 赋值给 dumpResult
- 根因:当 OHOS_GetMemLeakString malloc 分配了缓冲区但内容为空字符串时,原代码只判断 buf!=nullptr 就赋值
- 增加 *buf!=空字符 判断,与 buf!=nullptr 一起构成双重防御

**IssueNo**:
https://gitcode.com/openharmony/hiviewdfx_hidumper/issues/586

## 关联PR

- openharmony/hiviewdfx_hidumper!767

## 验证

- 编译通过
- 与 hidumper PR 配合验证

See merge request: openharmony/ability_ability_runtime!19413
2026-05-25 10:35:13 +08:00
openharmony_ci c5ae33a653 !19354 merge master into master
update: 更新文件 BUILD.gn

Created-by: llj123
Commit-by: llj123
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由

Co-Authored-By: Agent


See merge request: openharmony/ability_ability_runtime!19354
2026-05-22 14:17:14 +08:00
denganliang eb78c43fab fix: 防止GetDumpResult将空字符串赋值给dumpResult
当OHOS_GetMemLeakString malloc分配缓冲区但内容为空字符串时,
原代码只判断buf!=nullptr就直接赋值,增加*buf!='\0'判断,
避免空内容流入IPC传输链。

Co-Authored-By: Agent
Signed-off-by: denganliang <denganliang3@h-partners.com>
Change-Id: I31f55cc5e272e813ba3563942ee177ec0a6cdd3b
2026-05-22 12:02:40 +08:00