Chris Smith 15 лет назад
Родитель
Сommit
cc871ba3ea
2 измененных файлов: 8 добавлений и 5 удалений
  1. 7
    5
      src/com/dmdirc/Server.java
  2. 1
    0
      src/com/dmdirc/ServerState.java

+ 7
- 5
src/com/dmdirc/Server.java Просмотреть файл

@@ -371,14 +371,14 @@ public final class Server extends WritableFrameContainer implements Serializable
371 371
                 break;
372 372
             }
373 373
 
374
-            myState.transition(ServerState.DISCONNECTING);
375
-        
376
-            removeInvites();
377
-            updateIcon();
378
-
379 374
             if (parser == null) {
380 375
                 myState.transition(ServerState.DISCONNECTED);
381 376
             } else {
377
+                myState.transition(ServerState.DISCONNECTING);
378
+
379
+                removeInvites();
380
+                updateIcon();
381
+
382 382
                 parser.disconnect(reason);
383 383
             }
384 384
 
@@ -1196,6 +1196,8 @@ public final class Server extends WritableFrameContainer implements Serializable
1196 1196
     @Precondition("The current server state is CONNECTING")
1197 1197
     public void onConnectError(final ParserError errorInfo) {
1198 1198
         synchronized (this) {
1199
+            parser = null;
1200
+
1199 1201
             if (myState.getState() == ServerState.CLOSING
1200 1202
                     || myState.getState() == ServerState.DISCONNECTING) {
1201 1203
                 // Do nothing

+ 1
- 0
src/com/dmdirc/ServerState.java Просмотреть файл

@@ -68,6 +68,7 @@ public enum ServerState {
68 68
     RECONNECT_WAIT(
69 69
             "CONNECTING",                // User forced a connect attempt
70 70
             "TRANSIENTLY_DISCONNECTED",  // Reconnect timer expired
71
+            "DISCONNECTED",              // User forced a disconnect
71 72
             "CLOSING"                    // DMDirc is closing
72 73
     ),
73 74
 

Загрузка…
Отмена
Сохранить