From 0f26f514861e9ec6a86ea621c6202d87b5022525 Mon Sep 17 00:00:00 2001 From: Joshua Haberman Date: Mon, 22 Jun 2009 17:57:10 -0700 Subject: Fix varint-skipping (oops). --- upb_parse.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/upb_parse.c b/upb_parse.c index d9e9485..f000501 100644 --- a/upb_parse.c +++ b/upb_parse.c @@ -55,9 +55,12 @@ done: static upb_status_t skip_v_uint64_t(void **buf) { - for(int i = 0; i < 10; i++, *buf++) { - uint8_t *b = *buf; - if(!(*b & 0x80)) return UPB_STATUS_OK; + uint8_t *b = *buf; + for(int i = 0; i < 10; i++, b++) { + if(!(*b & 0x80)) { + *buf = b; + return UPB_STATUS_OK; + } } return UPB_ERROR_UNTERMINATED_VARINT; } -- cgit v1.2.3