Niedzielski has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/223986

Change subject: Fix empty tab list crash bug
......................................................................

Fix empty tab list crash bug

I can't repro this bug but it seems like it might be possible to restore
an empty tab list. This patch adds a blank tab in this event.

Bug: T105390
Change-Id: Ie75eaa04bc06441b0ba04f3d854a5f5c855f75cb
---
M wikipedia/src/main/java/org/wikipedia/page/PageViewFragmentInternal.java
1 file changed, 6 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia 
refs/changes/86/223986/1

diff --git 
a/wikipedia/src/main/java/org/wikipedia/page/PageViewFragmentInternal.java 
b/wikipedia/src/main/java/org/wikipedia/page/PageViewFragmentInternal.java
index 9d48a49..e948506 100755
--- a/wikipedia/src/main/java/org/wikipedia/page/PageViewFragmentInternal.java
+++ b/wikipedia/src/main/java/org/wikipedia/page/PageViewFragmentInternal.java
@@ -99,7 +99,8 @@
      * Since the list consists of Parcelable objects, it can be saved and 
restored from the
      * savedInstanceState of the fragment.
      */
-    private ArrayList<Tab> tabList;
+    @NonNull
+    private ArrayList<Tab> tabList = new ArrayList<>();
 
     @NonNull
     private TabFunnel tabFunnel = new TabFunnel();
@@ -209,15 +210,11 @@
         return model.getCurEntry();
     }
 
-    public PageViewFragmentInternal() {
-    }
-
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         app = (WikipediaApp) getActivity().getApplicationContext();
         model = new PageViewModel();
-        tabList = new ArrayList<>();
         if (Prefs.isExperimentalPageLoadEnabled()) {
             pageLoadStrategy = new HtmlPageLoadStrategy();
         } else {
@@ -268,9 +265,11 @@
         connectionIssueFunnel = new ConnectionIssueFunnel(app);
 
         if (savedInstanceState != null) {
+            //noinspection ConstantConditions
             tabList = savedInstanceState.getParcelableArrayList(TAB_LIST_KEY);
-        } else if (tabList.size() == 0) {
-            // fresh launch, so initialize with a single tab
+        }
+
+        if (tabList.isEmpty()) {
             tabList.add(new Tab());
         }
 

-- 
To view, visit https://gerrit.wikimedia.org/r/223986
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie75eaa04bc06441b0ba04f3d854a5f5c855f75cb
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Niedzielski <sniedziel...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to