summaryrefslogtreecommitdiffhomepage
path: root/libs/nixio/src/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'libs/nixio/src/process.c')
-rw-r--r--libs/nixio/src/process.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libs/nixio/src/process.c b/libs/nixio/src/process.c
index 45c06a644e..5ae9b829ea 100644
--- a/libs/nixio/src/process.c
+++ b/libs/nixio/src/process.c
@@ -65,14 +65,14 @@ int nixio__exec(lua_State *L, int m) {
return luaL_error(L, "stack overflow");
}
- if (!lua_type(L, -2) != LUA_TSTRING || !lua_isstring(L, -1)) {
+ if (lua_type(L, -2) != LUA_TSTRING || !lua_isstring(L, -1)) {
return luaL_argerror(L, 3, "invalid environment");
}
lua_pushfstring(L, "%s=%s",
lua_tostring(L, -2), lua_tostring(L, -1));
- lua_insert(L, 4);
+ lua_insert(L, 5);
lua_pop(L, 1);
argn++;
}
@@ -80,8 +80,8 @@ int nixio__exec(lua_State *L, int m) {
char **env = lua_newuserdata(L, sizeof(char*) * (argn + 1));
env[argn] = NULL;
- for (i = 1; i < argn; i++) {
- env[i-1] = (char *)lua_tostring(L, -i);
+ for (i = 1; i <= argn; i++) {
+ env[i-1] = (char *)lua_tostring(L, -(i+1));
}
execve(path, args, env);