diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1996-02-22 17:34:33 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1996-02-22 17:34:33 -0300 |
| commit | 8c1a9899d4460aa19780919f4245c08d7ebba0e9 (patch) | |
| tree | 685817907f64133330011eb7db845830c9327a3e /fallback.c | |
| parent | 05caf09a36cadaab401bc9a24e29e2cd6e4126d4 (diff) | |
| download | lua-8c1a9899d4460aa19780919f4245c08d7ebba0e9.tar.gz lua-8c1a9899d4460aa19780919f4245c08d7ebba0e9.tar.bz2 lua-8c1a9899d4460aa19780919f4245c08d7ebba0e9.zip | |
functions "luaI_free" and "luaI_realloc" (or macro "growvector") may be
called with NULL.
Diffstat (limited to 'fallback.c')
| -rw-r--r-- | fallback.c | 14 |
1 files changed, 3 insertions, 11 deletions
| @@ -3,7 +3,7 @@ | |||
| 3 | ** TecCGraf - PUC-Rio | 3 | ** TecCGraf - PUC-Rio |
| 4 | */ | 4 | */ |
| 5 | 5 | ||
| 6 | char *rcs_fallback="$Id: fallback.c,v 1.18 1996/01/30 15:25:23 roberto Exp roberto $"; | 6 | char *rcs_fallback="$Id: fallback.c,v 1.19 1996/02/08 19:08:34 roberto Exp roberto $"; |
| 7 | 7 | ||
| 8 | #include <stdio.h> | 8 | #include <stdio.h> |
| 9 | #include <string.h> | 9 | #include <string.h> |
| @@ -132,16 +132,8 @@ int luaI_lock (Object *object) | |||
| 132 | } | 132 | } |
| 133 | /* no more empty spaces */ | 133 | /* no more empty spaces */ |
| 134 | oldSize = lockSize; | 134 | oldSize = lockSize; |
| 135 | if (lockArray == NULL) | 135 | lockSize = (lockSize == 0) ? 10 : 3*lockSize/2 + 5; |
| 136 | { | 136 | lockArray = growvector(lockArray, lockSize, Object); |
| 137 | lockSize = 10; | ||
| 138 | lockArray = newvector(lockSize, Object); | ||
| 139 | } | ||
| 140 | else | ||
| 141 | { | ||
| 142 | lockSize = 3*oldSize/2 + 5; | ||
| 143 | lockArray = growvector(lockArray, lockSize, Object); | ||
| 144 | } | ||
| 145 | for (i=oldSize; i<lockSize; i++) | 137 | for (i=oldSize; i<lockSize; i++) |
| 146 | tag(&lockArray[i]) = LUA_T_NIL; | 138 | tag(&lockArray[i]) = LUA_T_NIL; |
| 147 | lockArray[oldSize] = *object; | 139 | lockArray[oldSize] = *object; |
