X-Git-Url: http://gitweb.fperrin.net/?p=Dictionary.git;a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2FDictionaryManagerActivity.java;h=265059ee108e9ff951743fa88b177b8162063269;hp=3cc5e823fee1c5e752c40d933c17634e8c0c51e9;hb=3ce0dd16e69302365d3bc802f298a5388b293d86;hpb=a01621630defba5e96e4a15764b6609087a4d9aa diff --git a/src/com/hughes/android/dictionary/DictionaryManagerActivity.java b/src/com/hughes/android/dictionary/DictionaryManagerActivity.java index 3cc5e82..265059e 100644 --- a/src/com/hughes/android/dictionary/DictionaryManagerActivity.java +++ b/src/com/hughes/android/dictionary/DictionaryManagerActivity.java @@ -224,7 +224,7 @@ public class DictionaryManagerActivity extends AppCompatActivity { } } zipFile = new ZipInputStream(new BufferedInputStream(zipFileStream)); - ZipEntry zipEntry = null; + ZipEntry zipEntry; while ((zipEntry = zipFile.getNextEntry()) != null) { // Note: this check prevents security issues like accidental path // traversal, which unfortunately ZipInputStream has no protection against. @@ -258,14 +258,15 @@ public class DictionaryManagerActivity extends AppCompatActivity { } finally { try { if (zipOut != null) zipOut.close(); - } catch (IOException e) {} + } catch (IOException ignored) {} try { if (zipFile != null) zipFile.close(); - } catch (IOException e) {} + } catch (IOException ignored) {} try { if (zipFileStream != null) zipFileStream.close(); - } catch (IOException e) {} - if (localZipFile != null && delete) localZipFile.delete(); + } catch (IOException ignored) {} + if (localZipFile != null && delete) //noinspection ResultOfMethodCallIgnored + localZipFile.delete(); } return result; } @@ -839,6 +840,14 @@ public class DictionaryManagerActivity extends AppCompatActivity { DownloadManager downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); + if (downloadManager == null) { + String msg = getString(R.string.downloadManagerQueryFailed); + new AlertDialog.Builder(DictionaryManagerActivity.this).setTitle(getString(R.string.error)) + .setMessage(getString(R.string.downloadFailed, msg)) + .setNeutralButton("Close", null).show(); + return; + } + try { downloadManager.enqueue(request); } catch (SecurityException e) {