Skip to content

native/Foundation/Path · 路径规范化 ​

路径规范化工具,71 行。提供基础的斜杠定位与路径规范化函数,被 SandboxFs 与 IOUniformer 复用。

关键函数 ​

从源码提取:

函数作用
get_last_slash_pos(char *s)返回路径中最后一个 / 的位置,用于切分目录与文件名
canonicalize_filename(const char *str)规范化文件名:消除 ./../重复斜杠,返回规范化后的路径

在重定向链中的位置 ​

规范化在前:先把 ./.. 消除,再做替换表匹配,避免因路径写法不一致导致 keep/replace 表漏匹配。

canonicalize_filename 实现等价于 realpath 但不要求路径真实存在——这是关键,因为虚拟 App 请求的路径在沙箱里可能尚未创建,但重定向计算必须先于文件访问完成。

基于 VirtualApp 与 epic,仅供学习研究。VirtualApp 禁止商用。