From b3d0682fb94f56a438dbb4fdb2b3440ccc10cfb4 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Tue, 8 Oct 2002 15:46:08 -0300 Subject: use of different buffers for scanner and concatenation --- lzio.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'lzio.c') diff --git a/lzio.c b/lzio.c index 7ae7abb5..b22c4242 100644 --- a/lzio.c +++ b/lzio.c @@ -1,5 +1,5 @@ /* -** $Id: lzio.c,v 1.20 2002/08/05 18:45:02 roberto Exp roberto $ +** $Id: lzio.c,v 1.21 2002/08/06 17:26:45 roberto Exp roberto $ ** a generic input stream interface ** See Copyright Notice in lua.h */ @@ -10,10 +10,10 @@ #include "lua.h" #include "llimits.h" +#include "lmem.h" #include "lzio.h" - int luaZ_fill (ZIO *z) { size_t size; const char *buff = z->reader(NULL, z->data, &size); @@ -66,3 +66,14 @@ size_t luaZ_read (ZIO *z, void *b, size_t n) { return 0; } +/* ------------------------------------------------------------------------ */ +char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n) { + if (n > buff->buffsize) { + if (n < LUA_MINBUFFER) n = LUA_MINBUFFER; + luaM_reallocvector(L, buff->buffer, buff->buffsize, n, char); + buff->buffsize = n; + } + return buff->buffer; +} + + -- cgit v1.2.3-55-g6feb