diff --git a/pdf.c b/pdf.c index cf0d9601c1581c640a65cf481d60abb77ce11dd1..04e2666319783e0f3109e96d35e388056ac960f8 100644 --- a/pdf.c +++ b/pdf.c @@ -277,9 +277,7 @@ HParsedToken * act_ahexstream(const HParseResult *p, void *u) { uint8_t *result_bytes; - size_t chunk_number; size_t required_bytes; - size_t out_pos = 0; HCountedArray *seq = H_CAST_SEQ(p->ast); HParsedToken *res; @@ -473,7 +471,7 @@ act_a85string(const HParseResult *p, void *u) /* Special-case: last chunk before EOD may be 4, 3, 2 or 1 bytes * The latter two happening if the group was parsed from a partial * group consisting less than 5 chars */ - HBytes *last_chunk = seq->elements[seq->used-1]; + HBytes *last_chunk = &H_CAST_BYTES(seq->elements[seq->used-1]); required_bytes = (chunk_number * 4 + last_chunk->len); result_bytes = h_arena_malloc(p->arena, sizeof(uint8_t) * required_bytes); @@ -481,7 +479,7 @@ act_a85string(const HParseResult *p, void *u) /* memcpy all but the last group's bytes into a single array */ for (size_t i = 0; i < seq->used-1; ++i) { - HBytes *chunk = H_CAST_BYTES(seq->elements[i]); + HBytes *chunk = &H_CAST_BYTES(seq->elements[i]); assert(out_pos < required_bytes); memcpy(&(result_bytes[out_pos]), chunk->token, 4); out_pos += 4;