Fix a bug where the UserDictionary may not be released
Bug: 5547357 Change-Id: I521afeaa349c86fb0087cedb70127de6acebec78
This commit is contained in:
parent
f8b9e7ebeb
commit
8b9c89aee2
1 changed files with 5 additions and 1 deletions
|
@ -179,8 +179,9 @@ public class UserDictionary extends ExpandableDictionary {
|
||||||
new Thread("addWord") {
|
new Thread("addWord") {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
Cursor cursor = null;
|
||||||
try {
|
try {
|
||||||
final Cursor cursor = client.query(Words.CONTENT_URI, PROJECTION_ADD,
|
cursor = client.query(Words.CONTENT_URI, PROJECTION_ADD,
|
||||||
"word=? and ((locale IS NULL) or (locale=?))",
|
"word=? and ((locale IS NULL) or (locale=?))",
|
||||||
new String[] { word, mLocale }, null);
|
new String[] { word, mLocale }, null);
|
||||||
if (cursor != null && cursor.moveToFirst()) {
|
if (cursor != null && cursor.moveToFirst()) {
|
||||||
|
@ -201,6 +202,9 @@ public class UserDictionary extends ExpandableDictionary {
|
||||||
// If we come here, the activity is already about to be killed, and we
|
// If we come here, the activity is already about to be killed, and we
|
||||||
// have no means of contacting the content provider any more.
|
// have no means of contacting the content provider any more.
|
||||||
// See ContentResolver#insert, inside the catch(){}
|
// See ContentResolver#insert, inside the catch(){}
|
||||||
|
} finally {
|
||||||
|
if (null != cursor) cursor.close();
|
||||||
|
client.release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}.start();
|
}.start();
|
||||||
|
|
Loading…
Reference in a new issue