aboutsummaryrefslogtreecommitdiff
path: root/src/lj_bcread.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/lj_bcread.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/lj_bcread.c b/src/lj_bcread.c
index 047f98df..28795e3c 100644
--- a/src/lj_bcread.c
+++ b/src/lj_bcread.c
@@ -53,11 +53,11 @@ static LJ_NOINLINE void bcread_fill(LexState *ls, MSize len, int need)
53 do { 53 do {
54 const char *buf; 54 const char *buf;
55 size_t sz; 55 size_t sz;
56 char *p = sbufB(&ls->sb); 56 char *p = ls->sb.b;
57 MSize n = (MSize)(ls->pe - ls->p); 57 MSize n = (MSize)(ls->pe - ls->p);
58 if (n) { /* Copy remainder to buffer. */ 58 if (n) { /* Copy remainder to buffer. */
59 if (sbuflen(&ls->sb)) { /* Move down in buffer. */ 59 if (sbuflen(&ls->sb)) { /* Move down in buffer. */
60 lj_assertLS(ls->pe == sbufP(&ls->sb), "bad buffer pointer"); 60 lj_assertLS(ls->pe == ls->sb.w, "bad buffer pointer");
61 if (ls->p != p) memmove(p, ls->p, n); 61 if (ls->p != p) memmove(p, ls->p, n);
62 } else { /* Copy from buffer provided by reader. */ 62 } else { /* Copy from buffer provided by reader. */
63 p = lj_buf_need(&ls->sb, len); 63 p = lj_buf_need(&ls->sb, len);
@@ -66,7 +66,7 @@ static LJ_NOINLINE void bcread_fill(LexState *ls, MSize len, int need)
66 ls->p = p; 66 ls->p = p;
67 ls->pe = p + n; 67 ls->pe = p + n;
68 } 68 }
69 setsbufP(&ls->sb, p + n); 69 ls->sb.w = p + n;
70 buf = ls->rfunc(ls->L, ls->rdata, &sz); /* Get more data from reader. */ 70 buf = ls->rfunc(ls->L, ls->rdata, &sz); /* Get more data from reader. */
71 if (buf == NULL || sz == 0) { /* EOF? */ 71 if (buf == NULL || sz == 0) { /* EOF? */
72 if (need) bcread_error(ls, LJ_ERR_BCBAD); 72 if (need) bcread_error(ls, LJ_ERR_BCBAD);
@@ -77,8 +77,8 @@ static LJ_NOINLINE void bcread_fill(LexState *ls, MSize len, int need)
77 if (n) { /* Append to buffer. */ 77 if (n) { /* Append to buffer. */
78 n += (MSize)sz; 78 n += (MSize)sz;
79 p = lj_buf_need(&ls->sb, n < len ? len : n); 79 p = lj_buf_need(&ls->sb, n < len ? len : n);
80 memcpy(sbufP(&ls->sb), buf, sz); 80 memcpy(ls->sb.w, buf, sz);
81 setsbufP(&ls->sb, p + n); 81 ls->sb.w = p + n;
82 ls->p = p; 82 ls->p = p;
83 ls->pe = p + n; 83 ls->pe = p + n;
84 } else { /* Return buffer provided by reader. */ 84 } else { /* Return buffer provided by reader. */