| Index: chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
|
| index 9352f016eba4b25144597040f3da25bb93a51c2a..91f0dee1b279ff923c2a9f3f8009bd8f155767f1 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
|
| @@ -13,6 +13,8 @@ import android.os.Process;
|
| import android.preference.PreferenceManager;
|
| import android.text.TextUtils;
|
|
|
| +import com.squareup.leakcanary.LeakCanary;
|
| +
|
| import org.chromium.base.ActivityState;
|
| import org.chromium.base.ApplicationStatus;
|
| import org.chromium.base.ApplicationStatus.ActivityStateListener;
|
| @@ -23,6 +25,7 @@ import org.chromium.base.Log;
|
| import org.chromium.base.ResourceExtractor;
|
| import org.chromium.base.ThreadUtils;
|
| import org.chromium.base.TraceEvent;
|
| +import org.chromium.base.annotations.RemovableInRelease;
|
| import org.chromium.base.library_loader.LibraryLoader;
|
| import org.chromium.base.library_loader.LibraryProcessType;
|
| import org.chromium.base.library_loader.ProcessInitException;
|
| @@ -93,6 +96,14 @@ public class ChromeBrowserInitializer {
|
| private ChromeBrowserInitializer(Context context) {
|
| mApplication = (ChromeApplication) context.getApplicationContext();
|
| mHandler = new Handler(Looper.getMainLooper());
|
| + initLeakCanary();
|
| + }
|
| +
|
| + @RemovableInRelease
|
| + private void initLeakCanary() {
|
| + // Watch that Activity objects are not retained after their onDestroy() has been called.
|
| + // This is a no-op in release builds.
|
| + LeakCanary.install(mApplication);
|
| }
|
|
|
| /**
|
|
|