Skip to content

Commit b3a14da

Browse files
committed
fix[ModVersionListFragment]: Faulty taskProxy logic
Code thought taskProxy was being set to null, when in reality it was actually just the value of it. Rather than just read the value of the key, I just delete the key itself because outside of installing something, we don't need it at all.
1 parent c93d535 commit b3a14da

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/fragments/ModVersionListFragment.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import net.kdt.pojavlaunch.R;
1818
import net.kdt.pojavlaunch.Tools;
1919
import net.kdt.pojavlaunch.extra.ExtraCore;
20-
import net.kdt.pojavlaunch.mirrors.DownloadMirror;
2120
import net.kdt.pojavlaunch.modloaders.ModloaderDownloadListener;
2221
import net.kdt.pojavlaunch.modloaders.ModloaderListenerProxy;
2322
import net.kdt.pojavlaunch.progresskeeper.ProgressKeeper;
@@ -106,7 +105,7 @@ public boolean onChildClick(ExpandableListView expandableListView, View view, in
106105
Object forgeVersion = expandableListView.getExpandableListAdapter().getChild(i, i1);
107106
ModloaderListenerProxy taskProxy = new ModloaderListenerProxy();
108107
Runnable downloadTask = createDownloadTask(forgeVersion, taskProxy);
109-
setTaskProxy(taskProxy);
108+
setTaskProxyValue(taskProxy);
110109
taskProxy.attachListener(this);
111110
mExpandableListView.setEnabled(false);
112111
new Thread(downloadTask).start();
@@ -118,7 +117,7 @@ public void onDownloadFinished(File downloadedFile) {
118117
Tools.runOnUiThread(()->{
119118
Context context = requireContext();
120119
getTaskProxy().detachListener();
121-
setTaskProxy(null);
120+
deleteTaskProxy();
122121
mExpandableListView.setEnabled(true);
123122
// Read the comment in FabricInstallFragment.onDownloadFinished() to see how this works
124123
getParentFragmentManager().popBackStackImmediate();
@@ -131,7 +130,7 @@ public void onDataNotAvailable() {
131130
Tools.runOnUiThread(()->{
132131
Context context = requireContext();
133132
getTaskProxy().detachListener();
134-
setTaskProxy(null);
133+
deleteTaskProxy();
135134
mExpandableListView.setEnabled(true);
136135
Tools.dialog(context,
137136
context.getString(R.string.global_error),
@@ -144,15 +143,18 @@ public void onDownloadError(Exception e) {
144143
Tools.runOnUiThread(()->{
145144
Context context = requireContext();
146145
getTaskProxy().detachListener();
147-
setTaskProxy(null);
146+
deleteTaskProxy();
148147
mExpandableListView.setEnabled(true);
149148
Tools.showError(context, e);
150149
});
151150
}
152151

153-
private void setTaskProxy(ModloaderListenerProxy proxy) {
152+
private void setTaskProxyValue(ModloaderListenerProxy proxy) {
154153
ExtraCore.setValue(mExtraTag, proxy);
155154
}
155+
private void deleteTaskProxy(){
156+
ExtraCore.removeValue(mExtraTag);
157+
}
156158

157159
private ModloaderListenerProxy getTaskProxy() {
158160
return (ModloaderListenerProxy) ExtraCore.getValue(mExtraTag);

0 commit comments

Comments
 (0)