summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Brady <sbradymobile@gmail.com>2013-07-13 10:48:53 -0400
committerPaul Beeler <sparksco@gmail.com>2013-07-15 20:53:22 -0600
commit1d0cc231bf09d46f7f6fdd7d69e036fb458b410a (patch)
treead7267bf72bb38156538549a50d0e5290f6d92b1
parent300fa0baaf6a4a3c7a8d7fd47054604d1f1e71da (diff)
downloadpackages_apps_settings-1d0cc231bf09d46f7f6fdd7d69e036fb458b410a.zip
packages_apps_settings-1d0cc231bf09d46f7f6fdd7d69e036fb458b410a.tar.gz
packages_apps_settings-1d0cc231bf09d46f7f6fdd7d69e036fb458b410a.tar.bz2
Fix IllegalArgumentException in Privacy Guard Manager
On tablets such as manta a this occurs. To reproduce go into PGM, press the back button one time, then go back into PGM. http://pastebin.com/N7XAybUB Remove privacy guard fragment in onDestroyView Change-Id: I61cebe273fa6fd514f18c86894acd176701148f6 Check if fragment transaction is empty before attempting to remove it Change-Id: I08591c89559d33fee30ac2934fdbcc30637147da PrivacyGuard fragment fix - change from empty check to isDestroyed check Change-Id: I52fe44b7446cd16793df6ac9cdbe31e2ddd70210 Signed-off-by: Paul Beeler <sparksco@gmail.com> PrivacyGuardManager: Reduce calls to getFragmentManager Change-Id: I74f07a58b09cf0e9114d0c1c56e9a97d55ab0900
-rw-r--r--src/com/android/settings/cyanogenmod/privacyguard/PrivacyGuardManager.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/com/android/settings/cyanogenmod/privacyguard/PrivacyGuardManager.java b/src/com/android/settings/cyanogenmod/privacyguard/PrivacyGuardManager.java
index 9e27147..51942ae 100644
--- a/src/com/android/settings/cyanogenmod/privacyguard/PrivacyGuardManager.java
+++ b/src/com/android/settings/cyanogenmod/privacyguard/PrivacyGuardManager.java
@@ -21,6 +21,7 @@ import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.app.Fragment;
+import android.app.FragmentManager;
import android.content.ActivityNotFoundException;
import android.content.DialogInterface;
import android.content.Intent;
@@ -107,6 +108,16 @@ public class PrivacyGuardManager extends Fragment
}
@Override
+ public void onDestroyView() {
+ super.onDestroyView();
+ FragmentManager fm = getFragmentManager();
+ Fragment f = fm.findFragmentById(R.id.privacy_guard_prefs);
+ if (f != null && !fm.isDestroyed()) {
+ fm.beginTransaction().remove(f).commit();
+ }
+ }
+
+ @Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);