diff options
author | Benoit Germain <bnt.germain@gmail.com> | 2013-02-14 16:03:30 +0100 |
---|---|---|
committer | Benoit Germain <bnt.germain@gmail.com> | 2013-02-14 16:03:30 +0100 |
commit | 02ea6ffb2fb3bfac3e96e9d23b28dc8490b366a5 (patch) | |
tree | 2fa86a2927a945dc525eb99f552339f132457935 /src/keeper.c | |
parent | 577bca074df12c520f49e9361381f0cad78200c1 (diff) | |
download | lanes-02ea6ffb2fb3bfac3e96e9d23b28dc8490b366a5.tar.gz lanes-02ea6ffb2fb3bfac3e96e9d23b28dc8490b366a5.tar.bz2 lanes-02ea6ffb2fb3bfac3e96e9d23b28dc8490b366a5.zip |
Fix bad assertion in linda dump utility
Diffstat (limited to 'src/keeper.c')
-rw-r--r-- | src/keeper.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/keeper.c b/src/keeper.c index 848fe2a..4a5c913 100644 --- a/src/keeper.c +++ b/src/keeper.c | |||
@@ -199,26 +199,32 @@ int keeper_push_linda_storage( lua_State* L, void* ptr) | |||
199 | STACK_MID( KL, 0); | 199 | STACK_MID( KL, 0); |
200 | return 0; | 200 | return 0; |
201 | } | 201 | } |
202 | // move data from keeper to destination state KEEPER MAIN | ||
202 | lua_pushnil( KL); // storage nil | 203 | lua_pushnil( KL); // storage nil |
204 | STACK_CHECK( L); | ||
203 | lua_newtable( L); // out | 205 | lua_newtable( L); // out |
204 | while( lua_next( KL, -2)) // storage key fifo | 206 | while( lua_next( KL, -2)) // storage key fifo |
205 | { | 207 | { |
206 | keeper_fifo* fifo = prepare_fifo_access( KL, -1); // storage key fifo | 208 | keeper_fifo* fifo = prepare_fifo_access( KL, -1); // storage key fifo |
207 | lua_pushvalue( KL, -2); // storage key fifo key | 209 | lua_pushvalue( KL, -2); // storage key fifo key |
208 | luaG_inter_move( KL, L, 1); // storage key fifo // out key | 210 | luaG_inter_move( KL, L, 1); // storage key fifo // out key |
209 | STACK_CHECK( L); | 211 | STACK_MID( L, 2); |
210 | lua_newtable( L); // out key keyout | 212 | lua_newtable( L); // out key keyout |
211 | luaG_inter_move( KL, L, 1); // storage key // out key keyout fifo | 213 | luaG_inter_move( KL, L, 1); // storage key // out key keyout fifo |
212 | lua_pushinteger( L, fifo->first); // out key keyout fifo first | 214 | lua_pushinteger( L, fifo->first); // out key keyout fifo first |
215 | STACK_MID( L, 5); | ||
213 | lua_setfield( L, -3, "first"); // out key keyout fifo | 216 | lua_setfield( L, -3, "first"); // out key keyout fifo |
214 | lua_pushinteger( L, fifo->count); // out key keyout fifo count | 217 | lua_pushinteger( L, fifo->count); // out key keyout fifo count |
218 | STACK_MID( L, 5); | ||
215 | lua_setfield( L, -3, "count"); // out key keyout fifo | 219 | lua_setfield( L, -3, "count"); // out key keyout fifo |
216 | lua_pushinteger( L, fifo->limit); // out key keyout fifo limit | 220 | lua_pushinteger( L, fifo->limit); // out key keyout fifo limit |
221 | STACK_MID( L, 5); | ||
217 | lua_setfield( L, -3, "limit"); // out key keyout fifo | 222 | lua_setfield( L, -3, "limit"); // out key keyout fifo |
218 | lua_setfield( L, -2, "fifo"); // out key keyout | 223 | lua_setfield( L, -2, "fifo"); // out key keyout |
219 | lua_rawset( L, -3); // out | 224 | lua_rawset( L, -3); // out |
220 | STACK_END( L, 0); | 225 | STACK_MID( L, 1); |
221 | } | 226 | } |
227 | STACK_END( L, 1); | ||
222 | lua_pop( KL, 1); // | 228 | lua_pop( KL, 1); // |
223 | STACK_END( KL, 0); | 229 | STACK_END( KL, 0); |
224 | keeper_release( K); | 230 | keeper_release( K); |