Fix sonar issues

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1868410 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Andreas Beeker 2019-10-13 19:38:03 +00:00
parent cf65519f61
commit a5a89b0498
4 changed files with 17 additions and 13 deletions

View File

@ -39,6 +39,8 @@ import org.apache.poi.util.Internal;
import org.apache.poi.util.LittleEndianConsts;
import org.apache.poi.util.LittleEndianInputStream;
import org.apache.poi.util.LocaleUtil;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
import org.apache.poi.util.RecordFormatException;
/**
@ -46,6 +48,7 @@ import org.apache.poi.util.RecordFormatException;
*/
@Internal
public class HemfComment {
private static final POILogger logger = POILogFactory.getLogger(HemfComment.class);
private static final int MAX_RECORD_LENGTH = HwmfPicture.MAX_RECORD_LENGTH;
public enum HemfCommentRecordType {
@ -557,7 +560,11 @@ public class HemfComment {
wmfData = IOUtils.safelyAllocate(winMetafileSize, MAX_RECORD_LENGTH);
// some emf comments are truncated, so we don't use readFully here
leis.read(wmfData);
int readBytes = leis.read(wmfData);
if (readBytes < wmfData.length) {
logger.log(POILogger.INFO, "Emf comment with WMF: expected "+wmfData.length+
" bytes - received only "+readBytes+" bytes.");
}
return leis.getReadIndex()-startIdx;
}

View File

@ -17,15 +17,7 @@
package org.apache.poi.hemf.usermodel;
import java.awt.Transparency;
import java.awt.color.ColorSpace;
import java.awt.image.BufferedImage;
import java.awt.image.ComponentColorModel;
import java.awt.image.DataBuffer;
import java.awt.image.DataBufferByte;
import java.awt.image.PixelInterleavedSampleModel;
import java.awt.image.Raster;
import java.awt.image.WritableRaster;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.ArrayDeque;
@ -38,7 +30,6 @@ import org.apache.poi.hemf.record.emf.HemfComment;
import org.apache.poi.hemf.record.emf.HemfRecord;
import org.apache.poi.hemf.record.emfplus.HemfPlusImage.EmfPlusBitmapDataType;
import org.apache.poi.hemf.record.emfplus.HemfPlusImage.EmfPlusImage;
import org.apache.poi.hemf.record.emfplus.HemfPlusImage.EmfPlusPixelFormat;
import org.apache.poi.hemf.record.emfplus.HemfPlusObject;
import org.apache.poi.hemf.record.emfplus.HemfPlusObject.EmfPlusObject;
import org.apache.poi.hwmf.record.HwmfBitmapDib;
@ -209,9 +200,12 @@ public class HemfEmbeddedIterator implements Iterator<HwmfEmbedded> {
EmfPlusImage img = epo.getObjectData();
assert(img.getImageDataType() != null);
HwmfEmbedded emb = getEmfPlusImageData();
final HwmfEmbedded emb = getEmfPlusImageData();
if (emb == null) {
return null;
}
HwmfEmbeddedType et;
final HwmfEmbeddedType et;
switch (img.getImageDataType()) {
case BITMAP:
if (img.getBitmapType() == EmfPlusBitmapDataType.COMPRESSED) {

View File

@ -341,6 +341,9 @@ public class HSLFAutoShape extends HSLFTextShape implements AutoShape<HSLFShape,
private void handleEscapeInfo(CTPath2D pathCT, Path2D path2D, byte[] segElem, Iterator<byte[]> vertIter) {
final ObjectFactory of = new ObjectFactory();
HSLFFreeformShape.EscapeInfo ei = getEscapeInfo(segElem);
if (ei == null) {
return;
}
switch (ei) {
case EXTENSION:
break;

View File

@ -205,7 +205,7 @@ public class HwmfEscape implements HwmfRecord {
int byteCount = leis.readUShort();
int size = 2*LittleEndianConsts.SHORT_SIZE;
escapeData = escapeFunction.constructor.get();
escapeData = (escapeFunction == null) ? new WmfEscapeUnknownData() : escapeFunction.constructor.get();
size += escapeData.init(leis, byteCount, escapeFunction);
return size;