From ea57855dcc6de40aeb8711b8ed4e0cc4dc48fcb7 Mon Sep 17 00:00:00 2001 From: neslihanturan Date: Thu, 29 Mar 2018 19:47:13 +0300 Subject: [PATCH] Fix memory leak C, I hope --- .../fr/free/nrw/commons/nearby/NearbyActivity.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java index 88d5880f5..59a1d3ebc 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java @@ -262,8 +262,6 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp @Override protected void onStop() { super.onStop(); - locationManager.removeLocationListener(this); - locationManager.unregisterLocationManager(); } @Override @@ -292,8 +290,13 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp // to the retained fragment object to perform its own cleanup. removeMapFragment(); removeListFragment(); - unregisterReceiver(broadcastReceiver); + } + unregisterReceiver(broadcastReceiver); + broadcastReceiver = null; + locationManager.removeLocationListener(this); + locationManager.unregisterLocationManager(); + } private void addNetworkBroadcastReceiver() { @@ -422,6 +425,7 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp if (nearbyMapFragment != null) { android.support.v4.app.FragmentManager fm = getSupportFragmentManager(); fm.beginTransaction().remove(nearbyMapFragment).commit(); + nearbyMapFragment = null; } } @@ -433,6 +437,7 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp if (nearbyListFragment != null) { android.support.v4.app.FragmentManager fm = getSupportFragmentManager(); fm.beginTransaction().remove(nearbyListFragment).commit(); + nearbyListFragment = null; } }