From efa3acddba1845fa79570f900118542cf632e43a Mon Sep 17 00:00:00 2001 From: vadimt Date: Tue, 23 Jun 2020 13:59:11 -0700 Subject: [PATCH] Making LauncherProvider think that clear-db request comes from Launcher If it comes from the test process, the request won't be honored. Bug: 159728364 Change-Id: I90029c1198634f1f1e94f61ba8ab9b41609d9ad5 --- .../testing/DebugTestInformationHandler.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/ext_tests/src/com/android/launcher3/testing/DebugTestInformationHandler.java b/ext_tests/src/com/android/launcher3/testing/DebugTestInformationHandler.java index 0b7d4bf27e..e649ce1de4 100644 --- a/ext_tests/src/com/android/launcher3/testing/DebugTestInformationHandler.java +++ b/ext_tests/src/com/android/launcher3/testing/DebugTestInformationHandler.java @@ -23,6 +23,7 @@ import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Color; +import android.os.Binder; import android.os.Bundle; import android.os.Debug; import android.system.Os; @@ -171,11 +172,16 @@ public class DebugTestInformationHandler extends TestInformationHandler { } case TestProtocol.REQUEST_CLEAR_DATA: { - LauncherSettings.Settings.call(mContext.getContentResolver(), - LauncherSettings.Settings.METHOD_CREATE_EMPTY_DB); - MAIN_EXECUTOR.submit(() -> - LauncherAppState.getInstance(mContext).getModel().forceReload()); - return response; + final long identity = Binder.clearCallingIdentity(); + try { + LauncherSettings.Settings.call(mContext.getContentResolver(), + LauncherSettings.Settings.METHOD_CREATE_EMPTY_DB); + MAIN_EXECUTOR.submit(() -> + LauncherAppState.getInstance(mContext).getModel().forceReload()); + return response; + } finally { + Binder.restoreCallingIdentity(identity); + } } default: