Skip to content

File tree

3 files changed

+17
-18
lines changed

3 files changed

+17
-18
lines changed

module/jsonurl-core/src/main/java/org/jsonurl/JsonUrl.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -393,20 +393,16 @@ private static final void encode(
393393
int start,
394394
int end) throws IOException {
395395

396-
for (int i = start;; i++) {
397-
if (end <= i) {
398-
break;
399-
}
400-
396+
for (int i = start; i < end; i++) {
401397
char c = s.charAt(i);
402398
int cp;
403399

404400
if (Character.isLowSurrogate(c)) {
405401
throw new MalformedInputException(i);
406402
}
407403
if (Character.isHighSurrogate(c)) {
408-
if (end <= ++i) {
409-
break;
404+
if (++i == end) {
405+
throw new MalformedInputException(i);
410406
}
411407

412408
char c2 = s.charAt(i);

module/jsonurl-core/src/main/java/org/jsonurl/ValueFactory.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -272,27 +272,27 @@ default V getTrueFalseNull(
272272
int start,
273273
int stop) {
274274

275-
keyword: switch (stop - start) {
275+
switch (stop - start) {
276276
case 4:
277277
switch (s.charAt(start)) {
278278
case 't':
279279
if (s.charAt(start + 1) != 'r'
280280
|| s.charAt(start + 2) != 'u'
281281
|| s.charAt(start + 3) != 'e') {
282-
break keyword;
282+
return null;
283283
}
284284
return getTrue();
285285

286286
case 'n':
287287
if (s.charAt(start + 1) != 'u'
288288
|| s.charAt(start + 2) != 'l'
289289
|| s.charAt(start + 3) != 'l') {
290-
break keyword;
290+
return null;
291291
}
292292
return getNull();
293293

294294
default:
295-
break keyword;
295+
return null;
296296
}
297297
// this can never happen but checkstyle gets angry, so:
298298
// fall through
@@ -303,15 +303,13 @@ default V getTrueFalseNull(
303303
|| s.charAt(start + 2) != 'l'
304304
|| s.charAt(start + 3) != 's'
305305
|| s.charAt(start + 4) != 'e') {
306-
break keyword;
306+
return null;
307307
}
308308
return getFalse();
309309

310310
default:
311-
break;
311+
return null;
312312
}
313-
314-
return null;
315313
}
316314

317315
}

module/jsonurl-core/src/test/java/org/jsonurl/AbstractParseTest.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -439,9 +439,10 @@ void testSyntaxException(String s) throws ParseException {
439439
})
440440
void testSyntaxException2(String text, String type) throws ParseException {
441441
Parser<?, ?, ?, ?, ?, ?, ?, ?, ?, ?> p = newParser();
442+
ValueType valueType = ValueType.valueOf(type);
442443
assertThrows(
443444
SyntaxException.class,
444-
() -> p.parse(text, ValueType.valueOf(type)));
445+
() -> p.parse(text, valueType));
445446
}
446447

447448
@ParameterizedTest
@@ -570,9 +571,11 @@ void testObject(String text) throws ParseException {
570571
"(1)",
571572
})
572573
void testObjectException(String text) throws ParseException {
574+
Parser<?,?,?,?,?,?,?,?,?,?> p = newParser();
575+
573576
assertThrows(
574577
SyntaxException.class,
575-
() -> newParser().parseObject(text));
578+
() -> p.parseObject(text));
576579
}
577580

578581
@ParameterizedTest
@@ -586,9 +589,11 @@ void testObjectException(String text) throws ParseException {
586589
"(a:b)",
587590
})
588591
void testArrayException(String text) throws ParseException {
592+
Parser<?,?,?,?,?,?,?,?,?,?> p = newParser();
593+
589594
assertThrows(
590595
SyntaxException.class,
591-
() -> newParser().parseArray(text));
596+
() -> p.parseArray(text));
592597
}
593598

594599
// CHECKSTYLE:OFF

0 commit comments

Comments
 (0)