| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: game fps code sec Signed-off-by: chengwenfeng <chengwenfeng6@h-partners.com> | 2 个月前 | |
master代码同步 Co-Authored-By: Agent Signed-off-by: MinorYJ <yejiang1@h-partners.com> 🤖 AI[0%] 🔧 Human Fixed[0%] 🧑 Human[100%] 👌 AI Adopted[0%] Change-Id: Ic3274ce264618374e8d29bbd5ac93f092ddcf5f5 | 2 个月前 | |
dlclose后指针置空避免双重close问题 Signed-off-by: tanjunjian <tanjunjian2@huawei.com> | 2 个月前 | |
fix(egl): refactor colorspace mapping and fix webgl log specifiers - opengl_wrapper: replace TranslateEglColorSpaceToNative switch with WIDE_COLORSPACE_EGL_TO_NATIVE map lookup; disconnect surface on destroy; validate system config path via PathToRealPath; add EglQueryStringImpl declaration and egl_wrapper_entry include. - webgl: correct %{public}d to %{public}u for unsigned args across context/arg/framebuffer logs; move n_func_arg/n_val out of rs_enable_gpu block in BUILD.gn. - create_pixelmap_surface: drop unused external_deps; fix log text; reposition LCOV markers. - render_service_base: switch rs_pixelmap_fd_track guard macro from RS_ENABLE_UNI_RENDER to ROSEN_OHOS and remove realpath canonicalization helpers. Signed-off-by: Charles_zz <zhangze47@huawei.com> Co-Authored-By: Agent AI[78%] Human Fixed[0%] Human[22%] AI Adopted[100%] Co-authored-by: opencode (glm-5.2) <ai@local> | 2 个月前 | |
!31365 merge pr30425-fork into master fix(surfaceimage): resolve deadlock in OnBufferAvailable by separating listener lock Created-by: Felix-fangyang Commit-by: li-kiao Merged-by: openharmony_ci Description: **Description:** **Issue number:** **Test & Result:** **CodeCheck:** <table> <thead> <tr> <th>类型</th> <th>自检项</th> <th>自检结果</th> </tr> </thead> <tbody> <tr> <td rowspan="2"><strong>多线程</strong></td> <td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td> <td>自检结果:不涉及</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td> <td>自检结果:pass</td> </tr> <tr> <td rowspan="4"><strong>内存操作</strong></td> <td>调用外部接口时,确认是否对返回值做了判空判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td> <td>自检结果:不涉及</td> </tr> <tr> <td>内存操作优先使用安全函数,并检查其返回值</td> <td>自检结果:不涉及</td> </tr> <tr> <td>注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td> <td>自检结果:不涉及</td> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td> <td>自检结果:不涉及</td> </tr> <tr> <td rowspan="3"><strong>外部输入</strong></td> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td> <td>自检结果:不涉及</td> </tr> <tr> <td>注意外部字符串数据有无尾0</td> <td>自检结果:不涉及</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>敏感信息</strong></td> <td>注意日志中打印敏感信息需匿名化</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>数学运算</strong></td> <td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>初始化</strong></td> <td>类成员、局部变量使用前需初始化</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>权限管理</strong></td> <td>作为系统服务对外提供了接口(或RSCmd),是否做了权限保护和校验,只允许申请了权限的应用访问</td> <td>自检结果:不涉及</td> </tr> </tbody> </table> ### L0新增用例自检结果 - [ ] 是,有新增L0用例,且完成自检 - [ ] 否 See merge request: openharmony/graphic_graphic_2d!31365 | 2 个月前 | |
!31799 merge fix/ani-shared-ptr-double-free into master fix(ani): shared_ptr control block split and double-free in transfer/Build Created-by: liufei225 Commit-by: liufei Merged-by: openharmony_ci Description: **Description:** 本次合入包含两个独立的缺陷修复: **A. LINE_STYLE_ONLY relayout handler 参数类型错误** adapter/skia/impl/paragraph_relayout_impl.cpp 中 RelayoutParagraphStyleAttribute::LINE_STYLE_ONLY(索引 18)对应的 handler 将 style.strutHeight(double,strut 高度缩放比)传递给 setForceStrutHeight(),该接口期望 bool 类型。对比正确的相邻 handler(索引 15 LINE_STYLE_HEIGHT_SCALE 传 strutHeight 给 setHeight()),此处为复制粘贴后忘记将参数改为 style.forceStrutHeight。当 strutHeight 为 0.0 时隐式转换为 false,导致 strut 高度行为异常。 **B. ANI/NAPI Typography shared_ptr 生命周期缺陷** 1. ani_paragraph.cpp 中 NativeTransferDynamic 通过 .get() 传递裸指针给 JsParagraph::CreateJsTypography,Constructor 从裸指针重新创建 shared_ptr,导致同一 Typography 被两个独立控制块管理 → 潜在 double-free。 修复:新增 CreateJsTypography(env, shared_ptr<Typography>) 按值传递重载,改为通过 napi_create_external 传递堆分配 shared_ptr,Constructor 拷贝构造以共享控制块。 2. ani_paragraph_builder.cpp 中 Build 方法 SetTypography 失败路径已通过 delete aniParagraph → ~shared_ptr 释放 Typography,Build 又执行 delete typographyPtr → double-free。 修复:移除 Build 失败路径中的冗余 delete typographyPtr。 **Issue number:** [#25356](https://gitcode.com/openharmony/graphic_graphic_2d/issues/25356) **Test & Result:** **CodeCheck:** <table> <thead> <tr> <th>类型</th> <th>自检项</th> <th>自检结果</th> </tr> </thead> <tbody> <tr> <td rowspan="2"><strong>多线程</strong></td> <td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td> <td>自检结果:不涉及</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td> <td>自检结果:不涉及</td> </tr> <tr> <td rowspan="4"><strong>内存操作</strong></td> <td>调用外部接口时,确认是否对返回值做了判空判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td> <td>自检结果:通过</td> </tr> <tr> <td>内存操作优先使用安全函数,并检查其返回值</td> <td>自检结果:通过</td> </tr> <tr> <td>注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td> <td>自检结果:通过,修复 B 即解决异常退出路径的资源释放问题</td> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td> <td>自检结果:通过,使用 shared_ptr 统一管理</td> </tr> <tr> <td rowspan="3"><strong>外部输入</strong></td> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td> <td>自检结果:不涉及</td> </tr> <tr> <td>注意外部字符串数据有无尾0</td> <td>自检结果:不涉及</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>敏感信息</strong></td> <td>注意日志中打印敏感信息需匿名化</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>数学运算</strong></td> <td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td> <td>自检结果:不涉及</td> </tr> <tr> <td><strong>初始化</strong></td> <td>类成员、局部变量使用前需初始化</td> <td>自检结果:通过</td> </tr> <tr> <td><strong>权限管理</strong></td> <td>作为系统服务对外提供了接口(或RSCmd),是否做了权限保护和校验,只允许申请了权限的应用访问</td> <td>自检结果:不涉及</td> </tr> </tbody> </table> ### L0新增用例自检结果 - [ ] 是,有新增L0用例,且完成自检 - [x] 否 See merge request: openharmony/graphic_graphic_2d!31799 | 2 个月前 | |
!31335 merge master into master grallocUsage增加BUFFER_USAGE_CPU_READ Created-by: ddw123 Commit-by: ddw123 Merged-by: openharmony_ci Description: **Description:** 当createInfo flags包含VK_SWAPCHAIN_CREATE_FORCE_LINEAR_BIT_OHOS时将gralloc usage设置为BUFFER_USAGE_CPU_READ **Issue number:** https://gitcode.com/openharmony/graphic_graphic_2d/issues/24933 **Test & Result:** **CodeCheck:** <table> <thead> <tr> <th>类型</th> <th>自检项</th> <th>自检结果</th> </tr> </thead> <tbody> <tr> <td rowspan="2"><strong>多线程</strong></td> <td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td> <td>自检结果:PASS</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td> <td>自检结果:PASS</td> </tr> <tr> <td rowspan="4"><strong>内存操作</strong></td> <td>调用外部接口时,确认是否对返回值做了判空判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td> <td>自检结果:PASS</td> </tr> <tr> <td>内存操作优先使用安全函数,并检查其返回值</td> <td>自检结果:PASS</td> </tr> <tr> <td>注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td> <td>自检结果:PASS</td> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td> <td>自检结果:PASS</td> </tr> <tr> <td rowspan="3"><strong>外部输入</strong></td> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td> <td>自检结果:PASS</td> </tr> <tr> <td>注意外部字符串数据有无尾0</td> <td>自检结果:PASS</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td> <td>自检结果:PASS</td> </tr> <tr> <td><strong>敏感信息</strong></td> <td>注意日志中打印敏感信息需匿名化</td> <td>自检结果:PASS</td> </tr> <tr> <td><strong>数学运算</strong></td> <td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td> <td>自检结果:PASS</td> </tr> <tr> <td><strong>初始化</strong></td> <td>类成员、局部变量使用前需初始化</td> <td>自检结果:PASS</td> </tr> <tr> <td><strong>权限管理</strong></td> <td>作为系统服务对外提供了接口(或RSCmd),是否做了权限保护和校验,只允许申请了权限的应用访问</td> <td>自检结果:PASS</td> </tr> </tbody> </table> ### L0新增用例自检结果 不涉及 - [ ] 是,有新增L0用例,且完成自检 - [ ] 否 See merge request: openharmony/graphic_graphic_2d!31335 | 2 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 |