aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lj_bcread.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_bcread.c b/src/lj_bcread.c
index 9f025500..940db9dd 100644
--- a/src/lj_bcread.c
+++ b/src/lj_bcread.c
@@ -446,7 +446,8 @@ GCproto *lj_bcread(LexState *ls)
446 setprotoV(L, L->top, pt); 446 setprotoV(L, L->top, pt);
447 incr_top(L); 447 incr_top(L);
448 } 448 }
449 if (ls->p < ls->pe || L->top-1 != bcread_oldtop(L, ls)) 449 if ((int32_t)(2*(uint32_t)(ls->pe - ls->p)) > 0 ||
450 L->top-1 != bcread_oldtop(L, ls))
450 bcread_error(ls, LJ_ERR_BCBAD); 451 bcread_error(ls, LJ_ERR_BCBAD);
451 /* Pop off last prototype. */ 452 /* Pop off last prototype. */
452 L->top--; 453 L->top--;