diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1997-06-19 15:49:40 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1997-06-19 15:49:40 -0300 |
| commit | c8897f2b082616bd5eb5328d3f260273adb53fbd (patch) | |
| tree | 32187773078e9c6f60a2aa0c88df721af0649fba | |
| parent | 6bb2cac3dbb440b6323979ad2908f61351dd3196 (diff) | |
| download | lua-c8897f2b082616bd5eb5328d3f260273adb53fbd.tar.gz lua-c8897f2b082616bd5eb5328d3f260273adb53fbd.tar.bz2 lua-c8897f2b082616bd5eb5328d3f260273adb53fbd.zip | |
counter for gsub only when there is a table (to keep full compatibility)
| -rw-r--r-- | strlib.c | 7 |
1 files changed, 4 insertions, 3 deletions
| @@ -3,7 +3,7 @@ | |||
| 3 | ** String library to LUA | 3 | ** String library to LUA |
| 4 | */ | 4 | */ |
| 5 | 5 | ||
| 6 | char *rcs_strlib="$Id: strlib.c,v 1.44 1997/06/18 21:20:45 roberto Exp roberto $"; | 6 | char *rcs_strlib="$Id: strlib.c,v 1.45 1997/06/19 17:45:28 roberto Exp roberto $"; |
| 7 | 7 | ||
| 8 | #include <string.h> | 8 | #include <string.h> |
| 9 | #include <stdio.h> | 9 | #include <stdio.h> |
| @@ -390,10 +390,11 @@ static void add_s (lua_Object newp, lua_Object table, int n) | |||
| 390 | struct lbuff oldbuff; | 390 | struct lbuff oldbuff; |
| 391 | int status; | 391 | int status; |
| 392 | lua_beginblock(); | 392 | lua_beginblock(); |
| 393 | if (lua_istable(table)) | 393 | if (lua_istable(table)) { |
| 394 | lua_pushobject(table); | 394 | lua_pushobject(table); |
| 395 | lua_pushnumber(n); | ||
| 396 | } | ||
| 395 | push_captures(); | 397 | push_captures(); |
| 396 | lua_pushnumber(n); | ||
| 397 | /* function may use lbuffer, so save it and create a new one */ | 398 | /* function may use lbuffer, so save it and create a new one */ |
| 398 | oldbuff = lbuffer; | 399 | oldbuff = lbuffer; |
| 399 | lbuffer.b = NULL; lbuffer.max = lbuffer.size = 0; | 400 | lbuffer.b = NULL; lbuffer.max = lbuffer.size = 0; |
