From 46ece7f58198993642afeca46849dcffe36c1d5f Mon Sep 17 00:00:00 2001
From: Ludovic Fauvet <etix@videolan.org>
Date: Wed, 10 Oct 2012 16:55:11 +0200
Subject: [PATCH] MainActivity: Fix an IllegalStateException

"Can not perform this action after onSaveInstanceState"
Using the support/compat library, fragments *must* be restored in
onResumeFragments and not onResume.
---
 .../src/org/videolan/vlc/gui/MainActivity.java    | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/vlc-android/src/org/videolan/vlc/gui/MainActivity.java b/vlc-android/src/org/videolan/vlc/gui/MainActivity.java
index 83d4300878..0889327981 100644
--- a/vlc-android/src/org/videolan/vlc/gui/MainActivity.java
+++ b/vlc-android/src/org/videolan/vlc/gui/MainActivity.java
@@ -285,6 +285,17 @@ public class MainActivity extends SherlockFragmentActivity {
         if (getIntent().hasExtra(AudioService.START_FROM_NOTIFICATION))
             getIntent().removeExtra(AudioService.START_FROM_NOTIFICATION);
 
+        /* Load media items from database and storage */
+        if (mScanNeeded)
+            MediaLibrary.getInstance(this).loadMediaItems(this);
+    }
+
+
+
+    @Override
+    protected void onResumeFragments() {
+        super.onResumeFragments();
+
         /* Restore last view */
         Fragment current = getSupportFragmentManager()
                 .findFragmentById(R.id.fragment_placeholder);
@@ -308,10 +319,6 @@ public class MainActivity extends SherlockFragmentActivity {
             ft.replace(R.id.fragment_placeholder, getFragment(mCurrentFragment));
             ft.commit();
         }
-
-        /* Load media items from database and storage */
-        if (mScanNeeded)
-            MediaLibrary.getInstance(this).loadMediaItems(this);
     }
 
     /**
-- 
GitLab