From 1d0cc231bf09d46f7f6fdd7d69e036fb458b410a Mon Sep 17 00:00:00 2001 From: Scott Brady Date: Sat, 13 Jul 2013 10:48:53 -0400 Subject: 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 PrivacyGuardManager: Reduce calls to getFragmentManager Change-Id: I74f07a58b09cf0e9114d0c1c56e9a97d55ab0900 --- .../cyanogenmod/privacyguard/PrivacyGuardManager.java | 11 +++++++++++ 1 file changed, 11 insertions(+) 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); -- cgit v1.1