/** * Check the XRef table by dereferencing all objects and fixing the offset if necessary. * * @throws IOException if something went wrong. */ private void checkXrefOffsets() throws IOException { // repair mode isn't available in non-lenient mode if (!isLenient) { return; } Map<COSObjectKey, Long> xrefOffset = xrefTrailerResolver.getXrefTable(); if (!validateXrefOffsets(xrefOffset)) { Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); if (!bfCOSObjectKeyOffsets.isEmpty()) { LOG.debug("Replaced read xref table with the results of a brute force search"); xrefOffset.clear(); xrefOffset.putAll(bfCOSObjectKeyOffsets); } } }
if (fileOffset == null && isLenient) Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); fileOffset = bfCOSObjectKeyOffsets.get(objKey); if (fileOffset != null) Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); fileOffset = bfCOSObjectKeyOffsets.get(key); if (fileOffset != null)
Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); offsetOrObjstmObNr = bfCOSObjectKeyOffsets.get(objKey); if (offsetOrObjstmObNr != null)
/** * Check the XRef table by dereferencing all objects and fixing the offset if necessary. * * @throws IOException if something went wrong. */ private void checkXrefOffsets() throws IOException { // repair mode isn't available in non-lenient mode if (!isLenient) { return; } Map<COSObjectKey, Long> xrefOffset = xrefTrailerResolver.getXrefTable(); if (!validateXrefOffsets(xrefOffset)) { Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); if (!bfCOSObjectKeyOffsets.isEmpty()) { LOG.debug("Replaced read xref table with the results of a brute force search"); xrefOffset.clear(); xrefOffset.putAll(bfCOSObjectKeyOffsets); } } }
if (fileOffset == null && isLenient) Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); fileOffset = bfCOSObjectKeyOffsets.get(objKey); if (fileOffset != null) Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); fileOffset = bfCOSObjectKeyOffsets.get(key); if (fileOffset != null)
Map<COSObjectKey, Long> bfCOSObjectKeyOffsets = getBFCOSObjectOffsets(); offsetOrObjstmObNr = bfCOSObjectKeyOffsets.get(objKey); if (offsetOrObjstmObNr != null)