From c5ebc792d6f786a6dd46eafdc7895faa5cb9259a Mon Sep 17 00:00:00 2001
From: Jeff Sharkey <jsharkey@android.com>
Date: Mon, 29 Apr 2013 12:26:33 -0700
Subject: [PATCH] Avoid leaking AssetFileDescriptor.

Change-Id: Iac388c8aefc684980cb4c7131fb47319f6073eb3
---
 .../inputmethod/latin/BinaryDictionaryGetter.java    | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
index ddd72f18e6..05c91a6efa 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
@@ -95,8 +95,16 @@ final class BinaryDictionaryGetter {
                     + fallbackResId);
             return null;
         }
-        return AssetFileAddress.makeFromFileNameAndOffset(
-                context.getApplicationInfo().sourceDir, afd.getStartOffset(), afd.getLength());
+        try {
+            return AssetFileAddress.makeFromFileNameAndOffset(
+                    context.getApplicationInfo().sourceDir, afd.getStartOffset(), afd.getLength());
+        } finally {
+            try {
+                afd.close();
+            } catch (IOException e) {
+                // Ignored
+            }
+        }
     }
 
     private static final class DictPackSettings {
-- 
GitLab