diff --git a/src/encode.c b/src/encode.c index 06ff1acf10c6d78e91af70c25fb01efce67612f4..f1ba1dfca8f33608eb97ac35f49a2688da0ea97b 100644 --- a/src/encode.c +++ b/src/encode.c @@ -4615,8 +4615,11 @@ static void decode_value2(struct decode_data *data) /* refno */ decode_number(refno, data); + if (refno < 0 || refno >= p->num_identifier_references) + decode_error(data, NULL, "Bad identifier reference %d\n", refno); + /* FIXME: - * Verify validity of depth and refno. + * Verify validity of depth. */ /* Expected identifier number. */