diff options
author | Suman Mukherjee <sumam@codeaurora.org> | 2014-02-06 13:05:45 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2014-02-11 19:54:15 -0800 |
commit | 89916ff4fb39ae8684d57aba7a2e7bfb73cb6d53 (patch) | |
tree | 53e7ebfe105e355877d3ae28be9d6933651906a5 | |
parent | cc1d00ec9306187cbe7fce0e6ba5446aeaaa98db (diff) | |
download | android_packages_apps_Snap-89916ff4fb39ae8684d57aba7a2e7bfb73cb6d53.tar.gz android_packages_apps_Snap-89916ff4fb39ae8684d57aba7a2e7bfb73cb6d53.tar.bz2 android_packages_apps_Snap-89916ff4fb39ae8684d57aba7a2e7bfb73cb6d53.zip |
Close open cursors
Cursors which got created during any query, needs to be closed
finally. Otherwise it'll cause leak in resource and cursor window
allocation will fail.
Change-Id: I65ace2dc227e0a50c163faba13fdb0fbfa71bc6c
CRs-Fixed: 594264
-rw-r--r-- | src/com/android/camera/crop/ImageLoader.java | 4 | ||||
-rw-r--r-- | src/com/android/camera/data/CameraDataAdapter.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/data/LocalMediaData.java | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/src/com/android/camera/crop/ImageLoader.java b/src/com/android/camera/crop/ImageLoader.java index 9eae63e8a..2fa54a19d 100644 --- a/src/com/android/camera/crop/ImageLoader.java +++ b/src/com/android/camera/crop/ImageLoader.java @@ -79,7 +79,9 @@ public final class ImageLoader { } int index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); - return cursor.getString(index); + String path = cursor.getString(index); + Utils.closeSilently(cursor); + return path; } /** diff --git a/src/com/android/camera/data/CameraDataAdapter.java b/src/com/android/camera/data/CameraDataAdapter.java index 5744d6b96..77e665191 100644 --- a/src/com/android/camera/data/CameraDataAdapter.java +++ b/src/com/android/camera/data/CameraDataAdapter.java @@ -153,6 +153,7 @@ public class CameraDataAdapter implements LocalDataAdapter { } else { Log.e(TAG, "video data not found"); } + c.close(); } // TODO: put the database query on background thread @@ -175,6 +176,7 @@ public class CameraDataAdapter implements LocalDataAdapter { // a new data. insertData(newData); } + c.close(); } @Override diff --git a/src/com/android/camera/data/LocalMediaData.java b/src/com/android/camera/data/LocalMediaData.java index bb451fa0f..fe5610863 100644 --- a/src/com/android/camera/data/LocalMediaData.java +++ b/src/com/android/camera/data/LocalMediaData.java @@ -457,6 +457,7 @@ public abstract class LocalMediaData implements LocalData { return null; } PhotoData newData = buildFromCursor(c); + c.close(); return newData; } @@ -744,6 +745,7 @@ public abstract class LocalMediaData implements LocalData { return null; } VideoData newData = buildFromCursor(c); + c.close(); return newData; } |