From 0795b6952bdaf5b7f8ce7842ae26676d80286dab Mon Sep 17 00:00:00 2001 From: m-holger Date: Wed, 22 Mar 2023 12:10:24 +0000 Subject: Add new function QUtil::hex_decode_char --- libqpdf/JSON.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'libqpdf/JSON.cc') diff --git a/libqpdf/JSON.cc b/libqpdf/JSON.cc index cb60eabc..fbf06f88 100644 --- a/libqpdf/JSON.cc +++ b/libqpdf/JSON.cc @@ -1121,12 +1121,8 @@ JSONParser::getToken() case ls_u4: using ui = unsigned int; - if ('0' <= *p && *p <= '9') { - u_value = 16 * u_value + (ui(*p) - ui('0')); - } else if ('a' <= *p && *p <= 'f') { - u_value = 16 * u_value + (10 + ui(*p) - ui('a')); - } else if ('A' <= *p && *p <= 'F') { - u_value = 16 * u_value + (10 + ui(*p) - ui('A')); + if (ui val = ui(QUtil::hex_decode_char(*p)); val < 16) { + u_value = 16 * u_value + val; } else { tokenError(); } -- cgit v1.2.3-70-g09d2