diff options
author | Jeff Sharkey <jsharkey@android.com> | 2012-04-20 11:53:48 -0700 |
---|---|---|
committer | Jeff Sharkey <jsharkey@android.com> | 2012-04-20 11:53:48 -0700 |
commit | 2f5fe598e53fc7bb3e8d6e1848ab62953866fb11 (patch) | |
tree | d98858b682446de658a8e442425192ef1c2c2860 /src/com/android/providers/downloads/StorageManager.java | |
parent | f8b1f373fd884fffe384acf564d0a4e374de8e02 (diff) | |
download | android_packages_providers_DownloadProvider-2f5fe598e53fc7bb3e8d6e1848ab62953866fb11.tar.gz android_packages_providers_DownloadProvider-2f5fe598e53fc7bb3e8d6e1848ab62953866fb11.tar.bz2 android_packages_providers_DownloadProvider-2f5fe598e53fc7bb3e8d6e1848ab62953866fb11.zip |
Avoid NPE when _DATA column is empty.
Bug: 6371718
Change-Id: Id661210101b01daf8f5d46a318c32dbb9de9a4fb
Diffstat (limited to 'src/com/android/providers/downloads/StorageManager.java')
-rw-r--r-- | src/com/android/providers/downloads/StorageManager.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/com/android/providers/downloads/StorageManager.java b/src/com/android/providers/downloads/StorageManager.java index 4f3af5c8..19132b51 100644 --- a/src/com/android/providers/downloads/StorageManager.java +++ b/src/com/android/providers/downloads/StorageManager.java @@ -329,8 +329,12 @@ class StorageManager { } long totalFreed = 0; try { + final int dataIndex = cursor.getColumnIndex(Downloads.Impl._DATA); while (cursor.moveToNext() && totalFreed < targetBytes) { - File file = new File(cursor.getString(cursor.getColumnIndex(Downloads.Impl._DATA))); + final String data = cursor.getString(dataIndex); + if (TextUtils.isEmpty(data)) continue; + + File file = new File(data); if (true || Constants.LOGV) { Slog.d(Constants.TAG, "purging " + file.getAbsolutePath() + " for " + file.length() + " bytes"); |