| 12863 | #undef setprogdir |
| 12864 | |
| 12865 | static void setprogdir (lua_State *L) { |
| 12866 | char buff[MAX_PATH + 1]; |
| 12867 | char *lb; |
| 12868 | DWORD nsize = sizeof(buff)/sizeof(char); |
| 12869 | DWORD n = GetModuleFileNameA(NULL, buff, nsize); |
| 12870 | if (n == 0 || n == nsize || (lb = strrchr(buff, '\\')) == NULL) |
| 12871 | luaL_error(L, "unable to get ModuleFileName"); |
| 12872 | else { |
| 12873 | *lb = '\0'; |
| 12874 | luaL_gsub(L, lua_tostring(L, -1), LUA_EXECDIR, buff); |
| 12875 | lua_remove(L, -2); /* remove original string */ |
| 12876 | } |
| 12877 | } |
| 12878 | |
| 12879 | |
| 12880 | static void pusherror (lua_State *L) { |
no test coverage detected