summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndreas Beeker <kiwiwings@apache.org>2016-12-17 02:35:30 +0000
committerAndreas Beeker <kiwiwings@apache.org>2016-12-17 02:35:30 +0000
commit5684ee90a428c87cfc80b50773de3ea10d1603d9 (patch)
tree384950412bbf92ecffaa777129a70d25e21bb790 /src
parentea0a511f00d6ea0571ea2902ea180dfcdc5fcedd (diff)
downloadpoi-5684ee90a428c87cfc80b50773de3ea10d1603d9.tar.gz
poi-5684ee90a428c87cfc80b50773de3ea10d1603d9.zip
various sonarqube fixes - mainly resource closing
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1774705 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src')
-rw-r--r--src/examples/src/org/apache/poi/hpsf/examples/CopyCompare.java14
-rw-r--r--src/examples/src/org/apache/poi/hpsf/examples/WriteAuthorAndTitle.java66
-rw-r--r--src/examples/src/org/apache/poi/hpsf/examples/WriteTitle.java5
-rw-r--r--src/java/org/apache/poi/POIDocument.java2
-rw-r--r--src/scratchpad/src/org/apache/poi/hpbf/extractor/PublisherTextExtractor.java12
-rw-r--r--src/scratchpad/src/org/apache/poi/hslf/blip/PICT.java7
6 files changed, 51 insertions, 55 deletions
diff --git a/src/examples/src/org/apache/poi/hpsf/examples/CopyCompare.java b/src/examples/src/org/apache/poi/hpsf/examples/CopyCompare.java
index d276fa4e72..1a0ade2af0 100644
--- a/src/examples/src/org/apache/poi/hpsf/examples/CopyCompare.java
+++ b/src/examples/src/org/apache/poi/hpsf/examples/CopyCompare.java
@@ -243,7 +243,6 @@ public class CopyCompare
throws NoPropertySetStreamException, MarkUnsupportedException,
UnsupportedEncodingException, IOException
{
- boolean equal = true;
final DocumentInputStream dis1 = new DocumentInputStream(d1);
final DocumentInputStream dis2 = new DocumentInputStream(d2);
try {
@@ -251,23 +250,20 @@ public class CopyCompare
PropertySet.isPropertySetStream(dis2)) {
final PropertySet ps1 = PropertySetFactory.create(dis1);
final PropertySet ps2 = PropertySetFactory.create(dis2);
- equal = ps1.equals(ps2);
- if (!equal) {
+ if (!ps1.equals(ps2)) {
msg.append("Property sets are not equal.\n");
- return equal;
+ return false;
}
} else {
- int i1;
- int i2;
+ int i1, i2;
do {
i1 = dis1.read();
i2 = dis2.read();
if (i1 != i2) {
- equal = false;
msg.append("Documents are not equal.\n");
- break;
+ return false;
}
- } while (equal && i1 == -1);
+ } while (i1 > -1);
}
} finally {
dis2.close();
diff --git a/src/examples/src/org/apache/poi/hpsf/examples/WriteAuthorAndTitle.java b/src/examples/src/org/apache/poi/hpsf/examples/WriteAuthorAndTitle.java
index 4e86030a54..b5734c0439 100644
--- a/src/examples/src/org/apache/poi/hpsf/examples/WriteAuthorAndTitle.java
+++ b/src/examples/src/org/apache/poi/hpsf/examples/WriteAuthorAndTitle.java
@@ -166,53 +166,42 @@ public class WriteAuthorAndTitle
Throwable t = null;
- try
- {
+ try {
/* Find out whether the current document is a property set
* stream or not. */
- if (PropertySet.isPropertySetStream(stream))
- {
- /* Yes, the current document is a property set stream.
- * Let's create a PropertySet instance from it. */
- PropertySet ps = null;
- try
- {
- ps = PropertySetFactory.create(stream);
- }
- catch (NoPropertySetStreamException ex)
- {
+ if (PropertySet.isPropertySetStream(stream)) {
+ try {
+ /* Yes, the current document is a property set stream.
+ * Let's create a PropertySet instance from it. */
+ PropertySet ps = PropertySetFactory.create(stream);
+
+ /* Now we know that we really have a property set. The next
+ * step is to find out whether it is a summary information
+ * or not. */
+ if (ps.isSummaryInformation()) {
+ /* Yes, it is a summary information. We will modify it
+ * and write the result to the destination POIFS. */
+ editSI(poiFs, path, name, ps);
+ } else {
+ /* No, it is not a summary information. We don't care
+ * about its internals and copy it unmodified to the
+ * destination POIFS. */
+ copy(poiFs, path, name, ps);
+ }
+ } catch (NoPropertySetStreamException ex) {
/* This exception will not be thrown because we already
* checked above. */
}
-
- /* Now we know that we really have a property set. The next
- * step is to find out whether it is a summary information
- * or not. */
- if (ps.isSummaryInformation())
- /* Yes, it is a summary information. We will modify it
- * and write the result to the destination POIFS. */
- editSI(poiFs, path, name, ps);
- else
- /* No, it is not a summary information. We don't care
- * about its internals and copy it unmodified to the
- * destination POIFS. */
- copy(poiFs, path, name, ps);
- }
- else
+ } else {
/* No, the current document is not a property set stream. We
* copy it unmodified to the destination POIFS. */
copy(poiFs, event.getPath(), event.getName(), stream);
- }
- catch (MarkUnsupportedException ex)
- {
+ }
+ } catch (MarkUnsupportedException ex) {
t = ex;
- }
- catch (IOException ex)
- {
+ } catch (IOException ex) {
t = ex;
- }
- catch (WritingNotSupportedException ex)
- {
+ } catch (WritingNotSupportedException ex) {
t = ex;
}
@@ -221,8 +210,7 @@ public class WriteAuthorAndTitle
* lines check whether a checked exception occured and throws an
* unchecked exception. The message of that exception is that of
* the underlying checked exception. */
- if (t != null)
- {
+ if (t != null) {
throw new HPSFRuntimeException
("Could not read file \"" + path + "/" + name +
"\". Reason: " + Util.toString(t));
diff --git a/src/examples/src/org/apache/poi/hpsf/examples/WriteTitle.java b/src/examples/src/org/apache/poi/hpsf/examples/WriteTitle.java
index e57ef17b44..4323ce242f 100644
--- a/src/examples/src/org/apache/poi/hpsf/examples/WriteTitle.java
+++ b/src/examples/src/org/apache/poi/hpsf/examples/WriteTitle.java
@@ -97,7 +97,10 @@ public class WriteTitle
poiFs.createDocument(is, SummaryInformation.DEFAULT_STREAM_NAME);
/* Write the whole POI file system to a disk file. */
- poiFs.writeFilesystem(new FileOutputStream(fileName));
+ FileOutputStream fos = new FileOutputStream(fileName);
+ poiFs.writeFilesystem(fos);
+ fos.close();
+ poiFs.close();
}
}
diff --git a/src/java/org/apache/poi/POIDocument.java b/src/java/org/apache/poi/POIDocument.java
index ed8e6783e4..70cce74d18 100644
--- a/src/java/org/apache/poi/POIDocument.java
+++ b/src/java/org/apache/poi/POIDocument.java
@@ -424,7 +424,7 @@ public abstract class POIDocument implements Closeable {
@Internal
protected boolean initDirectory() {
if (directory == null) {
- directory = new NPOIFSFileSystem().getRoot();
+ directory = new NPOIFSFileSystem().getRoot(); // NOSONAR
return true;
}
return false;
diff --git a/src/scratchpad/src/org/apache/poi/hpbf/extractor/PublisherTextExtractor.java b/src/scratchpad/src/org/apache/poi/hpbf/extractor/PublisherTextExtractor.java
index 2295f235f5..a0dc8b9afa 100644
--- a/src/scratchpad/src/org/apache/poi/hpbf/extractor/PublisherTextExtractor.java
+++ b/src/scratchpad/src/org/apache/poi/hpbf/extractor/PublisherTextExtractor.java
@@ -108,10 +108,14 @@ public final class PublisherTextExtractor extends POIOLE2TextExtractor {
}
for(int i=0; i<args.length; i++) {
- PublisherTextExtractor te = new PublisherTextExtractor(
- new FileInputStream(args[i])
- );
- System.out.println(te.getText());
+ FileInputStream fis = new FileInputStream(args[i]);
+ try {
+ PublisherTextExtractor te = new PublisherTextExtractor(fis);
+ System.out.println(te.getText());
+ te.close();
+ } finally {
+ fis.close();
+ }
}
}
}
diff --git a/src/scratchpad/src/org/apache/poi/hslf/blip/PICT.java b/src/scratchpad/src/org/apache/poi/hslf/blip/PICT.java
index 7494b55337..315836c91e 100644
--- a/src/scratchpad/src/org/apache/poi/hslf/blip/PICT.java
+++ b/src/scratchpad/src/org/apache/poi/hslf/blip/PICT.java
@@ -20,6 +20,7 @@ package org.apache.poi.hslf.blip;
import java.awt.Dimension;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
+import java.io.EOFException;
import java.io.IOException;
import java.util.zip.InflaterInputStream;
@@ -56,7 +57,11 @@ public final class PICT extends Metafile {
ByteArrayInputStream bis = new ByteArrayInputStream(data);
Header header = new Header();
header.read(data, pos);
- bis.skip(pos + header.getSize());
+ long bs_exp = pos + header.getSize();
+ long bs_act = bis.skip(bs_exp);
+ if (bs_exp != bs_act) {
+ throw new EOFException();
+ }
byte[] chunk = new byte[4096];
ByteArrayOutputStream out = new ByteArrayOutputStream(header.getWmfSize());
InflaterInputStream inflater = new InflaterInputStream( bis );