8941246b16df6a86afa20425b575ee35e0ffc79f
SectionRegionDwgOutFields 不再 explode 后按曲线写,改为固定写 nLen=0 + RegionAcisoutDwgOutFields。读取端 nLen==0 本来就识别 SAT 通道,因此 kCurrentVersionNumber 保持 7,新图在老插件上仍可还原。 同时修 SAT 通道自身缺陷: - RegionAcisoutDwgOutFields:临时文件名加进程号;new char[nLen] 补 +1 并 清零;检查短读,短读或空文件退回原生写法,不再把未初始化内存写进 DWG; acisOut/Open 失败分支补 DeleteFile;两个重复的 errorfile 分支合并为 WriteRegionNativeFallback,顺带修掉 7 字节泄漏 - RegionAcisInDwgInFields:临时文件名只取纯文件名,拒绝 DWG 里夹带的路径 成分和盘符;errorfile 分支补 delete[];create/dwgInFields/acisIn 失败 分支加日志并正确释放;acisIn 返回的非 region 实体不再泄漏 - 删除 RegionExplodeDwgOutFields(写路径退役后无调用者)
Languages
C++
80%
C
19.8%
Inno Setup
0.1%