tomblind / local-lua-debugger-vscode

Local Lua Debugger for VSCode
MIT License
106 stars 26 forks source link

Breakpoints doesn't work on Windows with custom lua runtime #13

Closed kozakt closed 4 years ago

kozakt commented 4 years ago

Breakpoint doesn't work when using custom lua runtime on Windows platform. This happen because of path to set breakpoint is wrongly formatted with forward slash instead of backslash for drive name. Now it looks like this: C:/somefolder\anotherfolder\script.lua And correct format should look like this: C:\somefolder\anotherfolder\script.lua

tomblind commented 4 years ago

Can you tell me what your custom runtime is? Or at least, what version of lua it is based on? Currently, the path separator is determined by package.config. Is it possible that is not available in your runtime?

kozakt commented 4 years ago

I'm using premake runtime https://premake.github.io/ Latest version is based on lua 5.3.5, but it's reproduced too with older versions based on lua 5.1.4 And yes, separator defined in package, but in file debugger/lldebugger.ts at line 126 you've added drive name to formatted path formattedPath = `${drive}${table.concat(pathParts, separator)}`; and drive name here contain wrong separator (C:/), like in my example above. Other separators in path except the one after drive name are correct.

tomblind commented 4 years ago

Thanks - that's helpful info. It looks like premake's lua interpreter uses forward slashes for its paths and the debugger was failing to account for that when formatting.