diff options
Diffstat (limited to 'loadlib.c')
-rw-r--r-- | loadlib.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -283,7 +283,8 @@ static int noenv (lua_State *L) { | |||
283 | 283 | ||
284 | 284 | ||
285 | /* | 285 | /* |
286 | ** Set a path | 286 | ** Set a path. (If using the default path, assume it is a string |
287 | ** literal in C and create it as an external string.) | ||
287 | */ | 288 | */ |
288 | static void setpath (lua_State *L, const char *fieldname, | 289 | static void setpath (lua_State *L, const char *fieldname, |
289 | const char *envname, | 290 | const char *envname, |
@@ -294,7 +295,7 @@ static void setpath (lua_State *L, const char *fieldname, | |||
294 | if (path == NULL) /* no versioned environment variable? */ | 295 | if (path == NULL) /* no versioned environment variable? */ |
295 | path = getenv(envname); /* try unversioned name */ | 296 | path = getenv(envname); /* try unversioned name */ |
296 | if (path == NULL || noenv(L)) /* no environment variable? */ | 297 | if (path == NULL || noenv(L)) /* no environment variable? */ |
297 | lua_pushstring(L, dft); /* use default */ | 298 | lua_pushextlstring(L, dft, strlen(dft), NULL, NULL); /* use default */ |
298 | else if ((dftmark = strstr(path, LUA_PATH_SEP LUA_PATH_SEP)) == NULL) | 299 | else if ((dftmark = strstr(path, LUA_PATH_SEP LUA_PATH_SEP)) == NULL) |
299 | lua_pushstring(L, path); /* nothing to change */ | 300 | lua_pushstring(L, path); /* nothing to change */ |
300 | else { /* path contains a ";;": insert default path in its place */ | 301 | else { /* path contains a ";;": insert default path in its place */ |