catch cursor window allocation exception
This commit is contained in:
parent
9b833d0335
commit
5b73ebe9d7
1 changed files with 10 additions and 4 deletions
|
@ -664,17 +664,23 @@ public class DatabaseBackend extends SQLiteOpenHelper {
|
|||
db.insert(RESOLVER_RESULTS_TABLENAME, null, contentValues);
|
||||
}
|
||||
|
||||
public Resolver.Result findResolverResult(String domain) {
|
||||
public synchronized Resolver.Result findResolverResult(String domain) {
|
||||
SQLiteDatabase db = this.getReadableDatabase();
|
||||
String where = Resolver.Result.DOMAIN + "=?";
|
||||
String[] whereArgs = {domain};
|
||||
final Cursor cursor = db.query(RESOLVER_RESULTS_TABLENAME, null, where, whereArgs, null, null, null);
|
||||
Resolver.Result result = null;
|
||||
if (cursor != null) {
|
||||
if (cursor.moveToFirst()) {
|
||||
result = Resolver.Result.fromCursor(cursor);
|
||||
try {
|
||||
if (cursor.moveToFirst()) {
|
||||
result = Resolver.Result.fromCursor(cursor);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Log.d(Config.LOGTAG, "unable to find cached resolver result in database " + e.getMessage());
|
||||
return null;
|
||||
} finally {
|
||||
cursor.close();
|
||||
}
|
||||
cursor.close();
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
|
Reference in a new issue