Commit Graph

1246 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
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
r00878997 2a2cf036fc MainThread set actv_eager_fpu
Signed-off-by: junkangRen <renjunkang@huawei.com>
2026-06-11 20:28:19 +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
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
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
huanghan18 52a70544f8 decouple dump js
Co-Authored-By: Agent
Signed-off-by: huanghan18 <huanghan18@huawei.com>
2026-05-30 10:51:03 +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
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
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
openharmony_ci acb3fc668d !19396 merge revert into master
revert customized buffer consumer

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

**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!19396
2026-05-21 17:28:47 +08:00
openharmony_ci 5c4f42ad62 !19379 merge pr_19137_fix_dlclose into master
fix: 修复DumpRuntimeHelper中dlopen handle未关闭的资源泄漏问题

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

- LoadMemLeakFunc 函数新增 handle 参数,用于返回 dlopen 打开的动态库句柄
- GetDumpResult 和 GetSnapshot 函数在使用完动态库后正确调用 dlclose 关闭句柄
- 添加三个 DumpNativeHeap 单元测试

## 关联Issue

Fixes #15291

## 验证

- 待补充验证结论

See merge request: openharmony/ability_ability_runtime!19379
2026-05-21 16:05:59 +08:00
zhangzhichao0091 34fefc40b4 revert customized buffer consumer
Signed-off-by: zhangzhichao0091 <zhangzhichao38@huawei.com>
Change-Id: I394004f2100d29b043c01477e472796e4ba8cd91
2026-05-21 14:49:16 +08:00
openharmony_ci 4702026a72 !19362 merge app_runing_id into master
cjerror故障日志添加app running id

Created-by: gcw_tRvYdUDI
Commit-by: pengxiangsong
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/hiviewdfx_hiview/issues/3381
**Description**:
cjerror上报hisysevent添加app running id
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |    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] 不涉及。如不涉及,没有用例调用CreateCjExceptionInfo函数


See merge request: openharmony/ability_ability_runtime!19362
2026-05-21 11:35:41 +08:00
pengxiangsong 4a041ac0f9 添加app running id
Signed-off-by: pengxiangsong <pengxiangsong2@h-partners.com>
2026-05-21 10:19:02 +08:00
openharmony_ci f11abd73dc !19128 merge fixSyncRisk0427 into master
fix Sync Risk

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

**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!19128
2026-05-19 22:00:31 +08:00
denganliang 17b4992265 fix: 修复DumpRuntimeHelper中dlopen handle未关闭的资源泄漏问题
LoadMemLeakFunc函数使用dlopen加载动态库后,返回的handle未正确关闭,
导致资源泄漏。修改后通过新增handle参数返回句柄,并在调用方正确调用dlclose。

Signed-off-by: denganliang <denganliang3@h-partners.com>
Co-Authored-By: Agent
Change-Id: If72e8d7ef3ed07bdaf1d175cf08243cb120f157c
2026-05-19 15:23:38 +08:00
wlh2624_DS e6302bb350 support static plugin hsp
Co-Authored-By: Agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2026-05-17 18:16:19 +08:00
wang_jun_long ff63793800 Merge branch 'fixSyncRisk0427' of git@gitcode.com:wang_jun_long/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_mgr_ipc_interface_code.h
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-05-15 14:33:51 +08:00
renjh5496 d2675f6cfb Merge branch 'iccccc' of git@gitcode.com:renjh5496/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_launch_data.h
2026-05-14 09:28:14 +08:00
openharmony_ci 6c11a7efeb !18997 merge NotifyMainProcess into master
NotifyMainProcess

Created-by: xialiangwei
Commit-by: xialiangwei;xialiangwei1@huawei.com
Merged-by: openharmony_ci
Description: **IssueNo**: https://gitcode.com/openharmony/arkcompiler_ets_runtime/issues/12865

**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!18997
2026-05-14 05:38:18 +08:00
wang_jun_long 1fbfd121be Merge branch 'fixSyncRisk0427' of git@gitcode.com:wang_jun_long/ability_ability_runtime.git into 'master'
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-05-13 15:48:58 +08:00
renjh5496 9587c24efe Merge branch 'iccccc' of git@gitcode.com:renjh5496/ability_ability_runtime.git into 'master' 2026-05-12 20:53:22 +08:00
wang_jun_long 77ef78a8fd fix Sync Risk
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-05-12 16:06:17 +08:00
openharmony_ci f11a304ff2 !19212 merge master into master
feat: 新增ARKWEB_V8内存dump类型并扩展MemDumpInfo参数

Created-by: LiuZX1997
Commit-by: LiuZX1997;liuzhenxiong
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/hiviewdfx_faultloggerd/issues/1926
**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!19212
2026-05-11 22:28:08 +08:00
LiuZX1997 43e95b1547 update: 更新文件 dump_runtime_helper.cpp
提交中添加辅助信息
Co-Authored-By: agent

Signed-off-by: LiuZX1997 <liuzhenxiong@huawei.com>
2026-05-11 14:14:59 +08:00
renjh5496 223cb43878 support child process and hnp debug
Co-Authored-By: shhaochen
Signed-off-by: renjh5496 <renjianhao@h-partners.com>
2026-05-09 17:38:24 +08:00
LiuZX1997 6bf1facb09 update: 更新文件 dump_runtime_helper.cpp
close fd

Signed-off-by: LiuZX1997 <liuzhenxiong@huawei.com>
2026-05-09 17:23:49 +08:00
LiuZX1997 12a87d4b9d update: 更新文件 dump_runtime_helper.cpp
关闭fd

Signed-off-by: LiuZX1997 <liuzhenxiong@huawei.com>
2026-05-09 17:21:19 +08:00
jsjzju dd50446e61 MakeImage support ability
Signed-off-by: jsjzju <jinsenjun@huawei.com>
Change-Id: I48c6ed04aa5d6e1aa362ebc9c20403db55c7acc4
Co-Authored-By: Agent
2026-05-09 11:13:04 +08:00
LiuZX1997 cfa83cc0de update: 更新文件 dump_runtime_helper.cpp
修改静态告警

Signed-off-by: LiuZX1997 <liuzhenxiong@huawei.com>
2026-05-07 22:16:09 +08:00
LiuZX1997 a21ce849d6 update: 更新文件 dump_runtime_helper.cpp
修改对nweb的调用

Signed-off-by: LiuZX1997 <liuzhenxiong@huawei.com>
2026-05-07 22:02:08 +08:00
liuzhenxiong d861a194eb feat: 新增ARKWEB_V8内存dump类型并扩展MemDumpInfo参数
新增内容:
1. MemDumpType枚举新增ARKWEB_V8类型(值为4)
2. MemDumpInfo结构体新增参数:
   - uint32_t renderPid(渲染进程ID)
   - bool needDump(默认值true)
   - bool needGc(默认值false)
3. 实现DumpArkwebV8Heap方法(参考KMP_KOTLIN实现)
4. 更新序列化/反序列化逻辑以支持新增参数
5. 补充测试用例:
   - DumpMem_0400(验证ARKWEB_V8类型)
   - DumpHeapSnapshot系列测试(覆盖参数组合和边界值)

修改文件:
- app_mem_dump_info.h/cpp(结构体定义和序列化)
- dump_runtime_helper.h/cpp(dump实现)
- 相关测试文件

Signed-off-by: liuzhenxiong <liuzhenxiong@huawei.com>
2026-05-07 21:51:23 +08:00
xialiangwei 0b3dbac5dc Merge branch 'NotifyMainProcess' of git@gitcode.com:xialiangwei/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_launch_data.h
2026-05-07 09:54:27 +08:00
openharmony_ci 26a9115455 !19048 merge master into master
jsvm dump

Created-by: aefaefw
Commit-by: aefaefw
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_jsvm/issues/122
**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!19048
2026-04-30 20:28:17 +08:00
openharmony_ci bd422ce877 !19121 merge master into master
disable watchdog in rescue

Created-by: fuxiuwsz
Commit-by: fuxiuwsz
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/15084
**Description**:
disable watchdog in rescue mode
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   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!19121
2026-04-29 18:05:59 +08:00
fuxiuwsz 1522f8c106 disable watchdog in rescue
Signed-off-by: fuxiuwsz <wangshengze1@huawei.com>
Co-Authored-By: fuxiuwsz
2026-04-29 15:01:40 +08:00