diff --git a/tools/input/parse.h b/tools/input/parse.h
index f5805e8ca45323363d4c2017583c3f13f8f2a85a..f39f80f2c69d9e964d7bb9aafe258ce721092669 100644
--- a/tools/input/parse.h
+++ b/tools/input/parse.h
@@ -89,6 +89,8 @@ static inline int parse_obu_header(const uint8_t *buf, int buf_size,
     buf_size--;
 
     if (extension_flag) {
+        if (!buf_size)
+            return -1;
         buf++;
         buf_size--;
         // ignore fields