Sean Owen 2022-09-24 09:23:49 -05:00
parent a6273e3bc7
commit fa19d4758f

View file

@ -220,22 +220,38 @@ final class DecodedBitStreamParser {
case MACRO_PDF417_OPTIONAL_FIELD_SEGMENT_COUNT:
ECIStringBuilder segmentCount = new ECIStringBuilder();
codeIndex = numericCompaction(codewords, codeIndex + 1, segmentCount);
resultMetadata.setSegmentCount(Integer.parseInt(segmentCount.toString()));
try {
resultMetadata.setSegmentCount(Integer.parseInt(segmentCount.toString()));
} catch (NumberFormatException nfe) {
throw FormatException.getFormatInstance();
}
break;
case MACRO_PDF417_OPTIONAL_FIELD_TIME_STAMP:
ECIStringBuilder timestamp = new ECIStringBuilder();
codeIndex = numericCompaction(codewords, codeIndex + 1, timestamp);
resultMetadata.setTimestamp(Long.parseLong(timestamp.toString()));
try {
resultMetadata.setTimestamp(Long.parseLong(timestamp.toString()));
} catch (NumberFormatException nfe) {
throw FormatException.getFormatInstance();
}
break;
case MACRO_PDF417_OPTIONAL_FIELD_CHECKSUM:
ECIStringBuilder checksum = new ECIStringBuilder();
codeIndex = numericCompaction(codewords, codeIndex + 1, checksum);
resultMetadata.setChecksum(Integer.parseInt(checksum.toString()));
try {
resultMetadata.setChecksum(Integer.parseInt(checksum.toString()));
} catch (NumberFormatException nfe) {
throw FormatException.getFormatInstance();
}
break;
case MACRO_PDF417_OPTIONAL_FIELD_FILE_SIZE:
ECIStringBuilder fileSize = new ECIStringBuilder();
codeIndex = numericCompaction(codewords, codeIndex + 1, fileSize);
resultMetadata.setFileSize(Long.parseLong(fileSize.toString()));
try {
resultMetadata.setFileSize(Long.parseLong(fileSize.toString()));
} catch (NumberFormatException nfe) {
throw FormatException.getFormatInstance();
}
break;
default:
throw FormatException.getFormatInstance();