LuaPanda
LuaPanda copied to clipboard
开启 distinguishSameNameFile 同名文件区分后,断点无法命中的问题
描述:
开启同名文件区分后,断点无法命中。除了stopOnEntry,其他断点均无法停止。
感谢 captain🍁 发现并提出问题
原因:
在开启同名文件区分的时候,会导致路径中的 . 被转为 / , 比如下面这个路径,被转换后导致无法命中断点。
逻辑是因为要区分同名文件,所以除了校验文件名 unlua.lua 之外,也要校验路径是否一致。但是处理方式比较简单,把路径中的. 全转为 / 了,导致和断点路径匹配不上
临时处理方案
方法1. 关闭distinguishSameNameFile
方法2. 使用路径剪裁,去除含 . 的路径,比如我测试了如下方法,使用truncatedOPath的配置项剪裁掉了一些含有 . 的公共路径,就可以命中了。这里注意被剪裁的路径需要时 . 已被转为 / 的路径。 参见下面例子