diff options
author | Emil Renner Berthing <esmil@mailme.dk> | 2012-12-20 22:48:40 +0100 |
---|---|---|
committer | Emil Renner Berthing <esmil@mailme.dk> | 2013-01-04 21:12:37 +0100 |
commit | 53c045bb3fc00f5e5f68d805f43b2cb1a9173dc3 (patch) | |
tree | 3899af67121b1c6bbb875402cc9c8ef3526eecf1 | |
parent | 02a14175cae37c1e0dcf5353e34ef9cbc1bf633f (diff) | |
download | lem-53c045bb3fc00f5e5f68d805f43b2cb1a9173dc3.tar.gz lem-53c045bb3fc00f5e5f68d805f43b2cb1a9173dc3.tar.xz lem-53c045bb3fc00f5e5f68d805f43b2cb1a9173dc3.zip |
io/tcp: keep both node and service strings on stack
-rw-r--r-- | lem/io/tcp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lem/io/tcp.c b/lem/io/tcp.c index 81516cd..d15eb24 100644 --- a/lem/io/tcp.c +++ b/lem/io/tcp.c @@ -113,7 +113,7 @@ tcp_connect_reap(struct lem_async *a) lem_debug("connection established"); if (sock >= 0) { - stream_new(T, sock, 2); + stream_new(T, sock, 3); lem_queue(T, 1); return; } @@ -154,9 +154,9 @@ tcp_connect(lua_State *T) g->sock = family; lem_async_do(&g->a, T, tcp_connect_work, tcp_connect_reap); - lua_settop(T, 1); + lua_settop(T, 2); lua_pushvalue(T, lua_upvalueindex(1)); - return lua_yield(T, 2); + return lua_yield(T, 3); } static void @@ -248,7 +248,7 @@ tcp_listen_reap(struct lem_async *a) /* create userdata and set the metatable */ w = lua_newuserdata(T, sizeof(struct ev_io)); - lua_pushvalue(T, 2); + lua_pushvalue(T, 3); lua_setmetatable(T, -2); /* initialize userdata */ @@ -304,7 +304,7 @@ tcp_listen(lua_State *T) g->err = backlog; lem_async_do(&g->a, T, tcp_listen_work, tcp_listen_reap); - lua_settop(T, 1); + lua_settop(T, 2); lua_pushvalue(T, lua_upvalueindex(1)); - return lua_yield(T, 2); + return lua_yield(T, 3); } |