aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java
diff options
context:
space:
mode:
authorHarsh Shandilya <me@msfjarvis.dev>2018-06-02 13:38:36 +0530
committerJason A. Donenfeld <Jason@zx2c4.com>2018-06-02 19:14:56 +0200
commit4671f59c67db5576ea340a2f586642b3243c85a4 (patch)
tree87ff1560eed926402bc29b1617f6799c1fd60a03 /app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java
parentcrypto: KeyEncoding: Fix style (diff)
downloadwireguard-android-4671f59c67db5576ea340a2f586642b3243c85a4.tar.xz
wireguard-android-4671f59c67db5576ea340a2f586642b3243c85a4.zip
android: Cleanup classes
- Use final modifer wherever possible - Use try-with-resources for input/output streams Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java')
-rw-r--r--app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java19
1 files changed, 10 insertions, 9 deletions
diff --git a/app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java b/app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java
index 90ed8fcf..e9c3e647 100644
--- a/app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java
+++ b/app/src/main/java/com/wireguard/android/util/SharedLibraryLoader.java
@@ -22,7 +22,7 @@ public final class SharedLibraryLoader {
private SharedLibraryLoader() {
}
- public static final void loadSharedLibrary(final Context context, final String libName) {
+ public static void loadSharedLibrary(final Context context, final String libName) {
Throwable noAbiException;
try {
System.loadLibrary(libName);
@@ -35,12 +35,12 @@ public final class SharedLibraryLoader {
final ZipFile zipFile;
try {
zipFile = new ZipFile(new File(context.getApplicationInfo().sourceDir), ZipFile.OPEN_READ);
- } catch (IOException e) {
+ } catch (final IOException e) {
throw new RuntimeException(e);
}
final String mappedLibName = System.mapLibraryName(libName);
- byte buffer[] = new byte[1024 * 32];
+ final byte[] buffer = new byte[1024 * 32];
for (final String abi : Build.SUPPORTED_ABIS) {
final String libZipPath = "lib" + File.separatorChar + abi + File.separatorChar + mappedLibName;
final ZipEntry zipEntry = zipFile.getEntry(libZipPath);
@@ -50,13 +50,13 @@ public final class SharedLibraryLoader {
try {
f = File.createTempFile("lib", ".so", context.getCacheDir());
Log.d(TAG, "Extracting apk:/" + libZipPath + " to " + f.getAbsolutePath() + " and loading");
- FileOutputStream out = new FileOutputStream(f);
- InputStream in = zipFile.getInputStream(zipEntry);
- int len;
- while ((len = in.read(buffer)) != -1) {
- out.write(buffer, 0, len);
+ try (final FileOutputStream out = new FileOutputStream(f);
+ final InputStream in = zipFile.getInputStream(zipEntry)) {
+ int len;
+ while ((len = in.read(buffer)) != -1) {
+ out.write(buffer, 0, len);
+ }
}
- out.close();
System.load(f.getAbsolutePath());
return;
} catch (Exception e) {
@@ -64,6 +64,7 @@ public final class SharedLibraryLoader {
noAbiException = e;
} finally {
if (f != null)
+ // noinspection ResultOfMethodCallIgnored
f.delete();
}
}