diff options
author | benoit-germain <bnt.germain@gmail.com> | 2012-08-10 23:11:00 +0300 |
---|---|---|
committer | benoit-germain <bnt.germain@gmail.com> | 2012-08-10 23:11:00 +0300 |
commit | 3c6eefbc011dfba12abd3021572a0507316b9753 (patch) | |
tree | 38515af7989f16932cf6ef210e17317d89e13bf0 | |
parent | 1926ff0589dad20cada2af757ebbf1b4dc20247d (diff) | |
download | lanes-3c6eefbc011dfba12abd3021572a0507316b9753.tar.gz lanes-3c6eefbc011dfba12abd3021572a0507316b9753.tar.bz2 lanes-3c6eefbc011dfba12abd3021572a0507316b9753.zip |
Proper crash fix, part 2
-rw-r--r-- | src/keeper.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/keeper.c b/src/keeper.c index 4e2beb7..2629485 100644 --- a/src/keeper.c +++ b/src/keeper.c | |||
@@ -69,12 +69,12 @@ static void atexit_close_keepers(void) | |||
69 | // 2-pass close, in case a keeper holds a reference to a linda bound to another keeoer | 69 | // 2-pass close, in case a keeper holds a reference to a linda bound to another keeoer |
70 | for( i = 0; i < GNbKeepers; ++ i) | 70 | for( i = 0; i < GNbKeepers; ++ i) |
71 | { | 71 | { |
72 | lua_close( GKeepers[i].L); | 72 | lua_State* L = GKeepers[i].L; |
73 | GKeepers[i].L = 0; | ||
74 | lua_close( L); | ||
73 | } | 75 | } |
74 | for( i = 0; i < GNbKeepers; ++ i) | 76 | for( i = 0; i < GNbKeepers; ++ i) |
75 | { | 77 | { |
76 | GKeepers[i].L = 0; | ||
77 | //assert( GKeepers[i].count == 0); | ||
78 | MUTEX_FREE( &GKeepers[i].lock_); | 78 | MUTEX_FREE( &GKeepers[i].lock_); |
79 | } | 79 | } |
80 | if( GKeepers) free( GKeepers); | 80 | if( GKeepers) free( GKeepers); |