diff --git a/premake5.lua b/premake5.lua index 88e1f2ba1b..0e37156f01 100644 --- a/premake5.lua +++ b/premake5.lua @@ -27,6 +27,8 @@ trigger = "embed", description = "Embed scripts in scripts.c; required before release builds", execute = function () + _MAIN_SCRIPT_DIR = os.getcwd() + _SCRIPT_DIR = path.join(_MAIN_SCRIPT_DIR, "scripts") include (path.join(corePath, "scripts/embed.lua")) end } diff --git a/scripts/embed.lua b/scripts/embed.lua index 90281fd5dd..7940efde21 100644 --- a/scripts/embed.lua +++ b/scripts/embed.lua @@ -40,20 +40,24 @@ local max = 4096 local start = 1 local len = contents:len() - while start <= len do - local n = len - start - if n > max then n = max end - local finish = start + n - - -- make sure I don't cut an escape sequence - while contents:sub(finish, finish) == "\\" do - finish = finish - 1 - end + if len > 0 then + while start <= len do + local n = len - start + if n > max then n = max end + local finish = start + n + + -- make sure I don't cut an escape sequence + while contents:sub(finish, finish) == "\\" do + finish = finish - 1 + end - local s = contents:sub(start, finish) - table.insert(result, "\t\"" .. s .. iif(finish < len, '"', '",')) + local s = contents:sub(start, finish) + table.insert(result, "\t\"" .. s .. iif(finish < len, '"', '",')) - start = finish + 1 + start = finish + 1 + end + else + table.insert(result, "\t\"\",") end table.insert(result, "")