@@ -390,7 +390,7 @@ static Release parseSimple(String value) {
390390 if (majorLength == 0 || value .length () < majorLength + 2 || value .charAt (majorLength ) != '.' )
391391 throw new IllegalArgumentException (value );
392392
393- int major = Integer .parseInt (value . substring ( 0 , majorLength ) );
393+ int major = Integer .parseInt (value , 0 , majorLength , 10 );
394394 if (major != 1 && major < MINIMUM_YEAR_MAJOR_VERSION )
395395 throw new IllegalArgumentException (value );
396396
@@ -401,7 +401,7 @@ static Release parseSimple(String value) {
401401 throw new IllegalArgumentException (value );
402402
403403 try {
404- int minor = Integer .parseInt (value . substring ( minorOffset , minorOffset + minorLength ) );
404+ int minor = Integer .parseInt (value , minorOffset , minorOffset + minorLength , 10 );
405405 int patch = 0 ;
406406
407407 if (minorOffset + minorLength < value .length ()) {
@@ -410,7 +410,7 @@ static Release parseSimple(String value) {
410410 if (patchOffset >= value .length () || value .charAt (patchOffset - 1 ) != '.' )
411411 throw new IllegalArgumentException (value );
412412
413- patch = Integer .parseInt (value . substring ( patchOffset ) );
413+ patch = Integer .parseInt (value , patchOffset , value . length (), 10 );
414414 }
415415
416416 return new Release (value , value , major , minor , patch , ReleaseType .UNKNOWN , VersionNumber .ZERO , Additional .NONE );
@@ -593,8 +593,8 @@ static LegacySnapshot parse(String value) {
593593 int year ;
594594 int week ;
595595 try {
596- year = Integer .parseInt (value . substring ( 0 , 2 ) );
597- week = Integer .parseInt (value . substring ( 3 , 5 ) );
596+ year = Integer .parseInt (value , 0 , 2 , 10 );
597+ week = Integer .parseInt (value , 3 , 5 , 10 );
598598 } catch (NumberFormatException e ) {
599599 throw new IllegalArgumentException (value );
600600 }
0 commit comments