From e4435a1e1842f4bb117b2a38ccef16212541d2d0 Mon Sep 17 00:00:00 2001 From: Aaron Culliney Date: Sat, 22 Aug 2015 12:10:52 -0700 Subject: [PATCH] Bugfix disk path persistence : defer applying path to avoid re-entrancy into Apple2DisksMenu constructor --- .../java/org/deadc0de/apple2ix/Apple2DisksMenu.java | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2DisksMenu.java b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2DisksMenu.java index 23688187..53ccef7d 100644 --- a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2DisksMenu.java +++ b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2DisksMenu.java @@ -60,11 +60,6 @@ public class Apple2DisksMenu implements Apple2MenuView { public Apple2DisksMenu(Apple2Activity activity) { mActivity = activity; - if (!sInitializedPath) { - sInitializedPath = true; - Apple2Preferences.CURRENT_DISK_PATH.load(mActivity); - } - LayoutInflater inflater = (LayoutInflater) mActivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mDisksView = inflater.inflate(R.layout.activity_disks, null, false); @@ -150,6 +145,10 @@ public class Apple2DisksMenu implements Apple2MenuView { if (isShowing()) { return; } + if (!sInitializedPath) { + sInitializedPath = true; + Apple2Preferences.CURRENT_DISK_PATH.load(mActivity); + } dynamicSetup(); mActivity.pushApple2View(this); } @@ -190,8 +189,8 @@ public class Apple2DisksMenu implements Apple2MenuView { try { JSONArray jsonArray = new JSONArray(pathStackJSON); for (int i = 0, count = jsonArray.length(); i < count; i++) { - JSONObject jsonObject = jsonArray.getJSONObject(i); - mPathStack.add(jsonObject.toString()); + String pathComponent = jsonArray.getString(i); + mPathStack.add(pathComponent); } } catch (JSONException e) { e.printStackTrace();