diff options
-rw-r--r-- | src/com/android/documentsui/DirectoryLoader.java | 12 | ||||
-rw-r--r-- | src/com/android/documentsui/MultiRootDocumentsLoader.java | 12 |
2 files changed, 12 insertions, 12 deletions
diff --git a/src/com/android/documentsui/DirectoryLoader.java b/src/com/android/documentsui/DirectoryLoader.java index 2775ec4bb..eb4e0a9f0 100644 --- a/src/com/android/documentsui/DirectoryLoader.java +++ b/src/com/android/documentsui/DirectoryLoader.java @@ -314,19 +314,19 @@ public class DirectoryLoader extends AsyncTaskLoader<DirectoryResult> { } private boolean checkIfCursorStale(DirectoryResult result) { - if (mResult == null) { + if (result == null || result.cursor == null || result.cursor.isClosed()) { return true; } Cursor cursor = result.cursor; - cursor.moveToPosition(-1); - for (int pos = 0; pos < cursor.getCount(); ++pos) { - try { + try { + cursor.moveToPosition(-1); + for (int pos = 0; pos < cursor.getCount(); ++pos) { if (!cursor.moveToNext()) { return true; } - } catch (Exception e) { - return true; } + } catch (Exception e) { + return true; } return false; } diff --git a/src/com/android/documentsui/MultiRootDocumentsLoader.java b/src/com/android/documentsui/MultiRootDocumentsLoader.java index b25828dda..74e44a14a 100644 --- a/src/com/android/documentsui/MultiRootDocumentsLoader.java +++ b/src/com/android/documentsui/MultiRootDocumentsLoader.java @@ -458,19 +458,19 @@ public abstract class MultiRootDocumentsLoader extends AsyncTaskLoader<Directory } private boolean checkIfCursorStale(DirectoryResult result) { - if (mResult == null) { + if (result == null || result.cursor == null || result.cursor.isClosed()) { return true; } Cursor cursor = result.cursor; - cursor.moveToPosition(-1); - for (int pos = 0; pos < cursor.getCount(); ++pos) { - try { + try { + cursor.moveToPosition(-1); + for (int pos = 0; pos < cursor.getCount(); ++pos) { if (!cursor.moveToNext()) { return true; } - } catch (Exception e) { - return true; } + } catch (Exception e) { + return true; } return false; } |