openharmony_ci
|
817f9f7817
|
!3388 merge master into master
lanqu2
Created-by: xuhy2
Commit-by: xuhy2;xuhy
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3388
|
2026-08-22 15:58:04 +08:00 |
|
xuhy
|
4b57fed5d6
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-20 20:48:09 +08:00 |
|
xuhy
|
78b7fdae59
|
lanqu2
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-20 16:14:10 +08:00 |
|
xuhy
|
6e25f35f42
|
revsied
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-20 15:47:02 +08:00 |
|
openharmony_ci
|
7e99c97657
|
!3365 merge 代码检视 into master
fix 0814_issue 告警
Created-by: xiyingxin
Commit-by: xiyingxin
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3365
|
2026-08-20 10:20:47 +08:00 |
|
openharmony_ci
|
ae277169bd
|
!3380 merge master into master
issue2654
Created-by: Liyimengg
Commit-by: LiYimeng
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3380
|
2026-08-19 19:13:47 +08:00 |
|
LiYimeng
|
b6b549003f
|
issue2654
Signed-off-by: LiYimeng <liyimeng2@huawei.com>
Co-Authored-By: Agent
|
2026-08-19 16:49:04 +08:00 |
|
红袍小恶魔
|
45bd7d8012
|
修复 getDistributedSessionController 权限校验并补充相关日志
- HandleGetDistributedSessionControllersInner 权限校验由 CHECK_SYSTEM_PERMISSION
改为 CHECK_MEDIA_RESOURCES_PERMISSION,与接口声明的
@permission ohos.permission.MANAGE_MEDIA_RESOURCES 对齐,并补充
HISYSEVENT_SECURITY 审计日志。
- GetSessionDescriptorsBySessionId 的 HISYSEVENT_SECURITY 改用本地 uid/pid。
- 调整 STATE_DISCONNECTED 缩进格式。
Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
|
2026-08-19 10:27:37 +08:00 |
|
openharmony_ci
|
71c95733bb
|
!3374 merge fix-0817 into master
增加权限校验
Created-by: weixin_43563670
Commit-by: weixin_43563670
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3374
|
2026-08-18 09:48:17 +08:00 |
|
openharmony_ci
|
34bb82bc8f
|
!3367 merge master into master
add moduleId && submoduleId
Created-by: chenyuming11
Commit-by: weixin_44014140
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3367
|
2026-08-17 21:46:13 +08:00 |
|
weixin_43563670
|
b876790f35
|
update: 更新文件 napi_avsession_manager.cpp
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
|
2026-08-17 21:14:46 +08:00 |
|
weixin_44014140
|
f94c4f4642
|
add moduleId && submoduleId
Signed-off-by: weixin_44014140 <chenyuming12@h-partners.com>
|
2026-08-17 20:44:48 +08:00 |
|
weixin_43563670
|
afb54c23af
|
update: 更新文件 avsession_manager_impl.cpp
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
|
2026-08-17 19:26:31 +08:00 |
|
weixin_43563670
|
b37caabfb8
|
update: 更新文件 napi_avsession_manager.cpp
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
|
2026-08-17 18:10:20 +08:00 |
|
weixin_43563670
|
fd059f59b2
|
增加权限校验
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
|
2026-08-17 17:52:44 +08:00 |
|
xiyingxin
|
cf2ae944c2
|
fix 0814_issue 告警
Co-Authored-By: Agent
Signed-off-by: xiyingxin <xiyingxin@h-partners.com>
|
2026-08-16 17:31:16 +08:00 |
|
xuhy
|
078c423e38
|
xiufu ut
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-14 19:01:34 +08:00 |
|
xuhy
|
a4c645beae
|
t
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-13 15:58:48 +08:00 |
|
xuhy
|
d85957bc43
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-13 15:04:19 +08:00 |
|
xuhy
|
a124823293
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-12 18:50:24 +08:00 |
|
xuhy
|
cf8d466872
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-12 18:49:56 +08:00 |
|
xuhy
|
6b8f280993
|
add ut
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-11 21:02:27 +08:00 |
|
xuhy
|
e5d58d60a2
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-11 16:34:57 +08:00 |
|
xuhy
|
513143acd9
|
revised ut
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-11 14:09:24 +08:00 |
|
xuhy
|
2ca1b14113
|
revised build.gn
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 19:14:34 +08:00 |
|
xuhy
|
44914bb531
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 19:01:47 +08:00 |
|
xuhy
|
3d6d76d97d
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 19:01:19 +08:00 |
|
xuhy
|
f8e96211d6
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 18:13:18 +08:00 |
|
xuhy
|
71e91c2c29
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 18:08:40 +08:00 |
|
xuhy
|
5d0398e79e
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 17:48:47 +08:00 |
|
xuhy
|
d762f61611
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-10 16:43:14 +08:00 |
|
xuhy
|
0fc996fb20
|
revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
|
2026-08-08 15:14:14 +08:00 |
|
openharmony_ci
|
75cb61e9cf
|
!3326 merge security-fix-lyc into master
修复avsession模块多项并发安全问题(issue #2578部分项)
Created-by: devil_red
Commit-by: 红袍小恶魔
Merged-by: openharmony_ci
Description: ## 关联 Issue
fix #2728
本 PR 修复 issue #2728 所列全部 13 个并发缺陷项(含第 7 项既有 ABBA 死锁),合并后请关闭该 issue。
## 修改内容
**services/session/server/ 服务核心层**
- **AVRouterImpl**:`castHandleToInfoMap_`/`providerManagerMap_` 全路径加锁;抽取 `GetCastProvider`/`GetHwProvider` 两个私有帮助函数,统一"锁内取 shared_ptr 快照、锁外调用"(14+3 处调用点收敛);`Init`/`Release` 的 SDK 调用全部移出锁外,仅赋值/置空在锁内;listener 回调锁外或 EventHandler 异步执行,消除锁序反转;修复 `OnCastStateChange` 持 `servicePtrLock_` 调 `checkEnableCast` 的 ABBA 死锁(快照后锁外调用)
- **HwCastProvider**:监听器列表遍历改"锁内取快照、锁外回调";`QueryCastSessionId` 补 `mutexLock_`
- **SoftbusSessionManager**:`ObtainPeerDeviceId` 补 `socketLock_`,`operator[]` 改 `find`(避免隐式插入默认项)
- **AVSessionUsersManager**:`GetContainerFromAll` 补 `userLock_`,消除惰性初始化竞争导致的会话丢失
- **AVSessionService**:`UpdateTopSession` 锁内取 `topSession_` 的 sptr 副本,消除锁外读 UAF
- **MigrateAVSessionProxy**:心跳/检查 worker 锁内取 `deviceId_` 快照
**services/session/adapter/**
- **AppManagerAdapter**:新增 `appStateChangeObserverLock_`,observer 快照后锁外调用
**frameworks/js/napi(ArkTS 绑定)**
- **NapiAVSession(握手按调用私有化)**:`SetAVPlaybackState` 改用 `PlaybackStateSyncContext{mtx,cv,ready,ret}`,删除 5 个进程级 static,根治跨会话返回码串扰;原生调用保持锁内执行(慢 IPC 不误超时),async 侧谓词等待 1s 有界预算;postTask 失败立即定死结果
- **NapiAVSession(静态暂存指针)**:新增 `napiAVSessionLock_` 保护 `napiAVSession_`,`NewInstance`/`ReCreateInstance` 锁内仅做指针赋值/快照,JS/IPC 调用全部锁外,无死锁风险
**interfaces + frameworks/common**
- **AVSessionPixelMap**:`bufferLock_` 改 `mutable`,`Marshalling` 加锁
**utils/**
- **HashCalculator**:全局 `g_context` 改 `static thread_local`,消除跨线程摘要互相破坏
- **AVSessionRadar**:新增 `deviceInfoLock_` 保护设备 id 惰性初始化与清空
## 自测
- 全部修改均为锁保护/快照/发布顺序类小步改动,已逐文件复查 diff 并做锁序审计(与现状代码组合无死锁)
- 建议在构建环境执行:avsession 相关 UT/FUZZ,以及 `CASTPLUS_CAST_ENGINE_ENABLE`、`DSOFTBUS_ENABLE` 两种开关组合编译
See merge request: openharmony/multimedia_av_session!3326
|
2026-08-07 18:20:25 +08:00 |
|
红袍小恶魔
|
a9e1679fe2
|
补充ut
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
|
2026-08-07 10:26:23 +08:00 |
|
openharmony_ci
|
a3e78c446a
|
!3325 merge 代码检视 into master
fix 0802告警处理
Created-by: xiyingxin
Commit-by: xiyingxin
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3325
|
2026-08-06 20:19:48 +08:00 |
|
openharmony_ci
|
10a5610e17
|
!3333 merge master into master
issue warning
Created-by: Liyimengg
Commit-by: LiYimeng
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3333
|
2026-08-06 20:17:46 +08:00 |
|
LiYimeng
|
7c4a71d43a
|
issue warning
Signed-off-by: LiYimeng <liyimeng2@huawei.com>
Co-Authored-By: Agent
|
2026-08-06 15:11:42 +08:00 |
|
openharmony_ci
|
19daf090ff
|
!3236 merge 0715userId into master
add userId for napi controller
Created-by: zhang-minmin-jason
Commit-by: zhang-minmin-jason
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3236
|
2026-08-04 19:13:07 +08:00 |
|
zhang-minmin-jason
|
cf545dca80
|
add userId for napi controller
Signed-off-by: zhang-minmin-jason <zhangminmin9@h-partners.com>
|
2026-08-03 12:15:02 +08:00 |
|
xiyingxin
|
eb86cf6964
|
fix 0802告警
Co-Authored-By: Agent
Signed-off-by: xiyingxin <xiyingxin@h-partners.com>
|
2026-08-02 20:21:17 +08:00 |
|
红袍小恶魔
|
c43e48f721
|
修复avsession模块多项并发安全问题(issue #2578部分项)
针对issue #2578中services/napi/interfaces/utils层的并发缺陷进行修复:
- No.07/08 AVRouterImpl: castHandleToInfoMap_/providerManagerMap_全路径加锁,抽取
GetCastProvider/GetHwProvider统一锁内取shared_ptr快照;Init/Release的SDK调用
全部移出锁外,仅赋值/置空在锁内;修复OnCastStateChange持servicePtrLock_调用
checkEnableCast形成的既有ABBA死锁(快照后锁外调用)
- No.09 HwCastProvider: 监听器遍历改锁内取快照+锁外回调,QueryCastSessionId加锁
- No.10 SoftbusSessionManager: ObtainPeerDeviceId加socketLock_,operator[]改find
- No.11 AVSessionUsersManager::GetContainerFromAll补userLock_,消除惰性初始化竞争
- No.13 UpdateTopSession锁内取topSession_的sptr副本,消除锁外读UAF
- No.16 MigrateAVSessionProxy心跳worker锁内取deviceId_快照
- No.17 AppManagerAdapter新增appStateChangeObserverLock_,快照+锁外调用
- No.20 NapiAVSession的SetAVPlaybackState握手按调用私有化(PlaybackStateSyncContext
含mtx/cv/ready/ret),删除5个进程级static,消除跨会话返回码串扰;原生调用保持锁内
执行,async侧谓词等待1s有界预算;postTask失败立即定死结果
- No.21 新增napiAVSessionLock_保护napiAVSession_,NewInstance/ReCreateInstance
锁内仅做指针赋值/快照,JS/IPC调用全部锁外
- No.24 AVSessionPixelMap::Marshalling加锁(bufferLock_改mutable)
- No.25 HashCalculator全局g_context改static thread_local,消除跨线程摘要破坏
- No.26 AVSessionRadar新增deviceInfoLock_保护设备id惰性初始化与清空
注: issue中No.01-06(PcmCastSession castLock_组)及pcmCastSession_附加项不在本次
提交范围,将后续单独提交;No.12/14/15/18/19/22/23经核实当前代码已修复,无需变更。
Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
|
2026-08-02 18:39:28 +08:00 |
|
红袍小恶魔
|
1b749b2bb8
|
修复SetLoopMode下界校验非兼容变更导致UT失败
PR3311将AVCastControlCommand::SetLoopMode下界由loopMode<0改为
loopMode<LOOP_MODE_UNDEFINED(-1),使-1从拒绝变为接受,属于非兼容变更,
导致老用例AVCastControllerTest.SendControlCommand001失败。
恢复原有下界语义(拒绝含-1在内的负数),保留新增的上界校验(安全加固点),
合法区间恢复为[LOOP_MODE_SEQUENCE, LOOP_MODE_CUSTOM];下界改用
LOOP_MODE_SEQUENCE枚举表达,与上界LOOP_MODE_CUSTOM对称,避免再次误抄
sibling AVControlCommand::SetLoopMode(其接受-1为自身既有语义,不受本变更影响)。
同步修正40276047中按错误行为固化的用例:
- SetLoopModeInvalidBelowRange001补充-1拒绝断言并修正描述
- SetLoopModeValidBoundary003下界期望由LOOP_MODE_UNDEFINED改为LOOP_MODE_SEQUENCE
Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
|
2026-08-01 17:19:44 +08:00 |
|
openharmony_ci
|
984b745cd4
|
!3311 merge security-fix-lyc into master
修复multimedia_av_session安全审查发现的多处缺陷
Created-by: devil_red
Commit-by: 红袍小恶魔
Merged-by: openharmony_ci
Description: 关联issue: #2718
## 背景
针对 multimedia_av_session 安全审查发现的问题进行兼容性修复,不引入非兼容变更。
## 修复内容
(详见 #2718)
### 输入校验
- AVCastControlCommand::SetLoopMode 补上界校验(原仅校验下界,与sibling一致)
- AVControlCommand::SetSpeed 增加 NaN/+Inf 校验(IEEE754下 NaN/Inf 绕过 <=0)
- OH_AVSession_GetPlaybackSpeed 校验 speed 有限性/范围后再 static_cast,修正日志 typo
- TaiheAVCastControllerCallback::IsCallbacksEmpty 补 event 边界校验
### 并发/资源
- OHAVSessionPlaybackState 缓存字段改 std::atomic,消除 GetPlaybackState 跨线程数据竞争
- OHAVSessionCallbackImpl::UnregisterSetLoopModeCallback 补 erase,修复回调残留 UAF
- OH_AVSession_UnregisterOutputDeviceChangeCallback 先取锁再读回调,消除 TOCTOU
- OH_AVSession_RegisterToggleFavoriteCallback 传播 CheckAndRegister 返回值,避免掩盖注册失败
- AVSessionManagerImpl::GetService 死亡接收者分配失败时清空 service_,允许重试
- AVSessionManagerImpl serviceStartCallback_ 全路径加锁,消除与 OnServiceStateChange 的竞争
### 异常安全/资源泄漏
- OH_AVSession_GetAVCastController 改用 new(std::nothrow),避免 bad_alloc 跨 C ABI
- OHAVCastController::CheckAndRegister 在 RegisterCallback 失败时重置回调,避免重试静默失效
- NapiUtils::WriteCallback 补 null/零检查;CurlSetRequestOptions HTTP 错误时清理 curl 句柄,修复泄漏
## 验证
- 逐项对照实际源码核实(扫描器行号已过期,按函数名定位)
- 均为兼容性内部修改,无公共 API/ABI/签名变更
- 建议本仓构建环境编译 + 跑相关 UT(napi_avsession/ohavsession/avsession_manager 模块)确认
合并后请关闭关联 issue #2718。
See merge request: openharmony/multimedia_av_session!3311
|
2026-07-30 22:29:27 +08:00 |
|
openharmony_ci
|
a1de613916
|
!3313 merge 信息泄露 into master
fix security warning 0729
Created-by: xiyingxin
Commit-by: xiyingxin
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3313
|
2026-07-30 22:09:57 +08:00 |
|
红袍小恶魔
|
935c820828
|
修改ut
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
|
2026-07-30 21:28:47 +08:00 |
|
openharmony_ci
|
47eba698dd
|
!3297 merge zhenggai into master
依赖ace_napi整改
Created-by: xuhy2
Commit-by: xuhy2;xuhy
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3297
|
2026-07-30 20:43:34 +08:00 |
|
openharmony_ci
|
d4a7010fec
|
!3314 merge master into master
check size
Created-by: Liyimengg
Commit-by: LiYimeng
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
- 重构了 xxxx 代码
- xxxx 算法优化
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3314
|
2026-07-30 20:31:26 +08:00 |
|
openharmony_ci
|
98fcdfc75a
|
!3307 merge master into master
fix: modify alarm issue
Created-by: guorunzhi
Commit-by: guorunzhi
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
[#2711](https://gitcode.com/openharmony/multimedia_av_session/issues/2711)
### 二、建议测试周期和提测地址
建议测试完成时间:xxxx.xx.xx
投产上线时间:xxxx.xx.xx
提测地址:CI环境/压测环境
测试账号:
### 三、变更内容
* 3.1 关联PR列表
* 3.2 数据库和部署说明
1. 常规更新
2. 重启unicorn
3. 重启sidekiq
4. 迁移任务:是否有迁移任务,没有写 "无"
5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"
* 3.4 其他技术优化内容(做了什么,变更了什么)
空指针/生命周期加固
- 两 Controller 析构加锁 erase(sessionId_);多处补 nullptr 校验并返回错误码(nativeController/session/abilityInfo/FFI session)。
- SendAVKeyEvent 检查 convertCJStructToNative 返回值,失败即返回。
资源释放修复(防 double-free / 泄漏)
- cj_avsession_utils.h:补 cjStructHeapFree(CDeviceInfo&) 等声明(修编译错误)。
- OnMediaKeyEvent:ckeyEvent{} 零初始化 + 失败分支 free(keys)。
- OnPlayerError:裸 free(data) → cjStructHeapFree(*static_cast<char**>(data))(修块 double-free + 字符串拷贝泄漏)。
- OnKeyRequest:释放前深释放 char* 与 CArray.head。
- 2-参 convertToCallbackData:首次失败早返回(防 error 被覆盖)、cData2 失败自清 cData。
- ConvertNativeToCJStruct(OutputDeviceInfo):CDeviceInfo 数组 memset_s 零初始化。
FFI 边界
- SetAVQueueTitle 补 *title、DispatchSessionEvent 补 *event 判空(防 std::string(nullptr))。
复杂度/性能/风格
- 抽取 SetAVMetaDataImage,该函数 CCN 24→16。
- displayTagsMap/dataSrcMap:count+[] → find(2 处)。
- 头文件行末空格清理
* 3.5 废弃通知(什么字段、方法弃用?)
* 3.6 后向不兼容变更(是否有无法向后兼容的变更?)
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
自测测试结论:
### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
检查点:
| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx | 否 | 需要 | 不需要 |
| | | | |
接口测试:
性能测试:
并发测试:
其他:
See merge request: openharmony/multimedia_av_session!3307
|
2026-07-30 20:03:02 +08:00 |
|
红袍小恶魔
|
6208a3bb39
|
补充UT
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
|
2026-07-30 19:42:45 +08:00 |
|
LiYimeng
|
01b6d3e515
|
check size
Signed-off-by: LiYimeng <liyimeng2@huawei.com>
|
2026-07-30 18:26:15 +08:00 |
|