diff options
author | Andrew Dolgov <[email protected]> | 2011-12-07 11:31:43 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2011-12-07 11:31:43 +0300 |
commit | 5c48526057a9a8c37df269f03dc2a7783d4ccdfd (patch) | |
tree | 0446f282729ae879bb8caa3d74283da99c634f0d | |
parent | 65c9eeb77373544b895be271ce8cf81ad9094a82 (diff) |
check for db validity in has/pending offlinedata functions
-rw-r--r-- | src/org/fox/ttrss/MainActivity.java | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/src/org/fox/ttrss/MainActivity.java b/src/org/fox/ttrss/MainActivity.java index b60609d2..81187fa0 100644 --- a/src/org/fox/ttrss/MainActivity.java +++ b/src/org/fox/ttrss/MainActivity.java @@ -123,14 +123,18 @@ public class MainActivity extends FragmentActivity implements OnlineServices { } private boolean hasPendingOfflineData() { - Cursor c = getReadableDb().query("articles", - new String[] { "COUNT(*)" }, "modified = 1", null, null, null, - null); - if (c.moveToFirst()) { - int modified = c.getInt(0); - c.close(); - - return modified > 0; + try { + Cursor c = getReadableDb().query("articles", + new String[] { "COUNT(*)" }, "modified = 1", null, null, null, + null); + if (c.moveToFirst()) { + int modified = c.getInt(0); + c.close(); + + return modified > 0; + } + } catch (IllegalStateException e) { + // db is closed? ugh } return false; @@ -141,13 +145,17 @@ public class MainActivity extends FragmentActivity implements OnlineServices { } private boolean hasOfflineData() { - Cursor c = getReadableDb().query("articles", - new String[] { "COUNT(*)" }, null, null, null, null, null); - if (c.moveToFirst()) { - int modified = c.getInt(0); - c.close(); - - return modified > 0; + try { + Cursor c = getReadableDb().query("articles", + new String[] { "COUNT(*)" }, null, null, null, null, null); + if (c.moveToFirst()) { + int modified = c.getInt(0); + c.close(); + + return modified > 0; + } + } catch (IllegalStateException e) { + // db is closed? } return false; |