我的lua源文件的文件名为> 60个字符(需要非绝对路径) 当调试器运行时,LuaDebugger.cs执行断点检查:
breakpoint = GetBreakpoint(src, line);
GetBreakpoint调用GetFile()但它总是返回null,因为
String.Compare(fileName, file.FileName, StringComparison.OrdinalIgnoreCase)
失败
when filename = luaDebug.shortsrc
(shortsrc由[System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst = 60/*LUA_IDSIZE*/)]
定义
)
如果我使用filename = luaDebug.source.toString().Substring(1)
它可以工作,但我不想更改luainterface-debugger源代码。
答案 0 :(得分:2)
好吧,如果你不想改变源代码,你几乎没有选择,因为源代码本身就是什么给你带来问题(我假设它是LUA_IDSIZE const)。
在不修改代码的情况下,您拥有的选项非常有限。它们都涉及放弃超过60个字符路径。