diff options
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/launcher3/IconCache.java | 16 | ||||
-rw-r--r-- | src/com/android/launcher3/util/SQLiteCacheHelper.java | 16 |
2 files changed, 9 insertions, 23 deletions
diff --git a/src/com/android/launcher3/IconCache.java b/src/com/android/launcher3/IconCache.java index d3fb38ede..5c86b6b33 100644 --- a/src/com/android/launcher3/IconCache.java +++ b/src/com/android/launcher3/IconCache.java @@ -772,13 +772,15 @@ public class IconCache { public void run() { if (!mAppsToUpdate.isEmpty()) { LauncherActivityInfoCompat app = mAppsToUpdate.pop(); - String cn = app.getComponentName().flattenToString(); - ContentValues values = updateCacheAndGetContentValues(app, true); - mIconDb.update(values, - IconDB.COLUMN_COMPONENT + " = ? AND " + IconDB.COLUMN_USER + " = ?", - new String[]{cn, Long.toString(mUserSerial)}); - mUpdatedPackages.add(app.getComponentName().getPackageName()); - + String pkg = app.getComponentName().getPackageName(); + PackageInfo info = mPkgInfoMap.get(pkg); + if (info != null) { + synchronized (IconCache.this) { + ContentValues values = updateCacheAndGetContentValues(app, true); + addIconToDB(values, app.getComponentName(), info, mUserSerial); + } + mUpdatedPackages.add(pkg); + } if (mAppsToUpdate.isEmpty() && !mUpdatedPackages.isEmpty()) { // No more app to update. Notify model. LauncherAppState.getInstance().getModel().onPackageIconsUpdated( diff --git a/src/com/android/launcher3/util/SQLiteCacheHelper.java b/src/com/android/launcher3/util/SQLiteCacheHelper.java index c455791b3..d1cfe4264 100644 --- a/src/com/android/launcher3/util/SQLiteCacheHelper.java +++ b/src/com/android/launcher3/util/SQLiteCacheHelper.java @@ -29,22 +29,6 @@ public abstract class SQLiteCacheHelper { } /** - * @see SQLiteDatabase#update(String, ContentValues, String, String[]) - */ - public void update(ContentValues values, String whereClause, String[] whereArgs) { - if (mIgnoreWrites) { - return; - } - try { - mOpenHelper.getWritableDatabase().update(mTableName, values, whereClause, whereArgs); - } catch (SQLiteFullException e) { - onDiskFull(e); - } catch (SQLiteException e) { - Log.d(TAG, "Ignoring sqlite exception", e); - } - } - - /** * @see SQLiteDatabase#delete(String, String, String[]) */ public void delete(String whereClause, String[] whereArgs) { |