From d6a3a18900a53551fb311c25cefbe97b8d59692c Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期一, 13 八月 2018 17:01:37 +0800
Subject: [PATCH] 1559  【BUG】封魔坛结算界面与排行榜界面重叠

---
 System/WindowBase/WindowAsyncLoad.cs |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/System/WindowBase/WindowAsyncLoad.cs b/System/WindowBase/WindowAsyncLoad.cs
index e4769a6..c4dd49c 100644
--- a/System/WindowBase/WindowAsyncLoad.cs
+++ b/System/WindowBase/WindowAsyncLoad.cs
@@ -45,6 +45,7 @@
                 var task = taskQueue[i];
                 if (task.windowName == _name)
                 {
+                    task.Dispose();
                     taskQueue.Remove(task);
                     break;
                 }
@@ -66,6 +67,11 @@
                 currentTask = null;
             }
 
+            for (int i = 0; i < taskQueue.Count; i++)
+            {
+                var task = taskQueue[i];
+                task.Dispose();
+            }
             taskQueue.Clear();
             NetLinkWin.Hide();
         }
@@ -116,6 +122,14 @@
                 }
             }
 
+            public void RemoveTask(Task _task)
+            {
+                if (tasks.Contains(_task))
+                {
+                    tasks.Remove(_task);
+                }
+            }
+
             public void NotifyTaskState(Task _task)
             {
                 bool allReady = true;
@@ -155,9 +169,9 @@
                 callBack = _callBack;
             }
 
-            public void Bind(TaskGroup _task)
+            public void Bind(TaskGroup _taskGroup)
             {
-                taskGroup = _task;
+                taskGroup = _taskGroup;
             }
 
             public void Report(bool _ok, UnityEngine.Object _object)
@@ -179,6 +193,10 @@
             public void Dispose()
             {
                 callBack = null;
+                if (taskGroup != null)
+                {
+                    taskGroup.RemoveTask(this);
+                }
             }
 
             public void Done()

--
Gitblit v1.8.0