summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndré Klitzing <aklitzing@gmail.com>2018-03-02 22:01:22 +0100
committerAndré Klitzing <aklitzing@gmail.com>2018-05-04 13:08:31 +0000
commit5269f6d55e4cb804e0316f2239916f83001a7379 (patch)
tree47accb9c59039b668ac9b4e47c38752d0c0c57cc /src
parentef242e0b34df0111a6f1306550acef9fde0ec1c3 (diff)
Avoid to fail to close stream on exception
Move .close() to finally block. Found by spotbugs. Change-Id: I1d11f52c79e805082f05801e4ef0ec94c6dc4e6e Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Diffstat (limited to 'src')
-rw-r--r--src/android/java/src/org/qtproject/qt5/android/bindings/QtLoader.java58
1 files changed, 43 insertions, 15 deletions
diff --git a/src/android/java/src/org/qtproject/qt5/android/bindings/QtLoader.java b/src/android/java/src/org/qtproject/qt5/android/bindings/QtLoader.java
index 424bf45c53..531802959c 100644
--- a/src/android/java/src/org/qtproject/qt5/android/bindings/QtLoader.java
+++ b/src/android/java/src/org/qtproject/qt5/android/bindings/QtLoader.java
@@ -355,12 +355,21 @@ public abstract class QtLoader {
destinationFile.createNewFile();
AssetManager assetsManager = m_context.getAssets();
- InputStream inputStream = assetsManager.open(source);
- OutputStream outputStream = new FileOutputStream(destinationFile);
- copyFile(inputStream, outputStream);
+ InputStream inputStream = null;
+ OutputStream outputStream = null;
+ try {
+ inputStream = assetsManager.open(source);
+ outputStream = new FileOutputStream(destinationFile);
+ copyFile(inputStream, outputStream);
+ catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (inputStream != null)
+ inputStream.close();
- inputStream.close();
- outputStream.close();
+ if (outputStream != null)
+ outputStream.close();
+ }
}
private static void createBundledBinary(String source, String destination)
@@ -377,12 +386,21 @@ public abstract class QtLoader {
destinationFile.createNewFile();
- InputStream inputStream = new FileInputStream(source);
- OutputStream outputStream = new FileOutputStream(destinationFile);
- copyFile(inputStream, outputStream);
+ InputStream inputStream = null;
+ OutputStream outputStream = null;
+ try {
+ inputStream = new FileInputStream(source);
+ outputStream = new FileOutputStream(destinationFile);
+ copyFile(inputStream, outputStream);
+ catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (inputStream != null)
+ inputStream.close();
- inputStream.close();
- outputStream.close();
+ if (outputStream != null)
+ outputStream.close();
+ }
}
private boolean cleanCacheIfNecessary(String pluginsPrefix, long packageVersion)
@@ -391,12 +409,15 @@ public abstract class QtLoader {
long cacheVersion = 0;
if (versionFile.exists() && versionFile.canRead()) {
+ DataInputStream inputStream = null;
try {
- DataInputStream inputStream = new DataInputStream(new FileInputStream(versionFile));
+ inputStream = new DataInputStream(new FileInputStream(versionFile));
cacheVersion = inputStream.readLong();
- inputStream.close();
} catch (Exception e) {
e.printStackTrace();
+ } finally {
+ if (inputStream != null)
+ inputStream.close();
}
}
@@ -431,9 +452,16 @@ public abstract class QtLoader {
versionFile.createNewFile();
- DataOutputStream outputStream = new DataOutputStream(new FileOutputStream(versionFile));
- outputStream.writeLong(packageVersion);
- outputStream.close();
+ DataOutputStream outputStream = null;
+ try {
+ outputStream = new DataOutputStream(new FileOutputStream(versionFile));
+ outputStream.writeLong(packageVersion);
+ catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (outputStream != null)
+ outputStream.close();
+ }
}
{