diff options
Diffstat (limited to 'buffer.c')
-rw-r--r-- | buffer.c | 24 |
1 files changed, 12 insertions, 12 deletions
@@ -31,23 +31,23 @@ void grow(lua_State * L, struct buffer * b) b->allocated = allocated; } -int read_more(lua_State * L, struct stream * s, int minimum_length, lua_KContext ctx) +int read_more(lua_State * L, int fd, struct buffer * in, int minimum_length, lua_KContext ctx) { - const int free_space = s->in.allocated + s->in.offset - s->in.length - 1; + const int free_space = in->allocated + in->offset - in->length - 1; while (free_space < minimum_length) { - grow(L, &s->in); + grow(L, in); } - if (0 < s->in.offset) + if (0 < in->offset) { - memmove(s->in.data, s->in.data + s->in.offset, s->in.length - s->in.offset); - s->in.offset = 0; - s->in.length -= s->in.offset; + memmove(in->data, in->data + in->offset, in->length - in->offset); + in->offset = 0; + in->length -= in->offset; } - int length = read(s->fd, s->in.data + s->in.length, free_space); + int length = read(fd, in->data + in->length, free_space); if (-1 == length) { @@ -62,18 +62,18 @@ int read_more(lua_State * L, struct stream * s, int minimum_length, lua_KContext } } - s->in.length += length; + in->length += length; return length; } -int prepare_at_least(lua_State * L, struct stream * s, int minimum_length, lua_KContext ctx) +int prepare_at_least(lua_State * L, int fd, struct buffer * in, int minimum_length, lua_KContext ctx) { - const int remaining_bytes = s->in.length - s->in.next; + const int remaining_bytes = in->length - in->next; if (remaining_bytes < minimum_length) { - return read_more(L, s, minimum_length, ctx); + return read_more(L, fd, in, minimum_length, ctx); } return remaining_bytes; |