Commit 6f94a3a89ab4dc7be0c053c53a94868b6c9a747c
1 parent
fcc123a6
In JSONParser::handleToken move string decoding into switch statement
Showing
1 changed file
with
5 additions
and
9 deletions
libqpdf/JSON.cc
| @@ -1135,16 +1135,7 @@ JSONParser::handleToken() | @@ -1135,16 +1135,7 @@ JSONParser::handleToken() | ||
| 1135 | ": material follows end of object: " + token); | 1135 | ": material follows end of object: " + token); |
| 1136 | } | 1136 | } |
| 1137 | 1137 | ||
| 1138 | - // Git string value | ||
| 1139 | std::string s_value; | 1138 | std::string s_value; |
| 1140 | - if (lex_state == ls_string) { | ||
| 1141 | - // Token includes the quotation marks | ||
| 1142 | - if (token.length() < 2) { | ||
| 1143 | - throw std::logic_error("JSON string length < 2"); | ||
| 1144 | - } | ||
| 1145 | - s_value = decode_string(token, token_start); | ||
| 1146 | - } | ||
| 1147 | - | ||
| 1148 | std::shared_ptr<JSON> item; | 1139 | std::shared_ptr<JSON> item; |
| 1149 | 1140 | ||
| 1150 | switch (lex_state) { | 1141 | switch (lex_state) { |
| @@ -1185,6 +1176,11 @@ JSONParser::handleToken() | @@ -1185,6 +1176,11 @@ JSONParser::handleToken() | ||
| 1185 | break; | 1176 | break; |
| 1186 | 1177 | ||
| 1187 | case ls_string: | 1178 | case ls_string: |
| 1179 | + // Token includes the quotation marks | ||
| 1180 | + if (token.length() < 2) { | ||
| 1181 | + throw std::logic_error("JSON string length < 2"); | ||
| 1182 | + } | ||
| 1183 | + s_value = decode_string(token, token_start); | ||
| 1188 | item = std::make_shared<JSON>(JSON::makeString(s_value)); | 1184 | item = std::make_shared<JSON>(JSON::makeString(s_value)); |
| 1189 | break; | 1185 | break; |
| 1190 | 1186 |