From 1c6ba33be3c1b544b85afcd27b217d0f65c15085 Mon Sep 17 00:00:00 2001 From: Martin Michelsen Date: Mon, 3 Oct 2022 19:57:41 -0700 Subject: [PATCH] don't send blank message box if not needed --- src/ReceiveCommands.cc | 8 ++++++-- tests/BB-CreateCharGame.test.txt | 4 ---- tests/DCv1-GameSmokeTest.test.txt | 4 ---- tests/DCv2-GameSmokeTest.test.txt | 2 -- tests/PC-BasicGame.test.txt | 2 -- 5 files changed, 6 insertions(+), 14 deletions(-) diff --git a/src/ReceiveCommands.cc b/src/ReceiveCommands.cc index 52269dc4..2ca09ccf 100644 --- a/src/ReceiveCommands.cc +++ b/src/ReceiveCommands.cc @@ -1544,8 +1544,12 @@ static void on_change_ship(shared_ptr s, shared_ptr c, send_self_leave_notification(c); // Sending a blank message box here works around the bug where the log window - // contents appear prepended to the next large message box. - send_message_box(c, u""); + // contents appear prepended to the next large message box. But, we don't have + // to do this if we're not going to show the welcome message or information + // menu (that is, if the client will not send a close confirmation). + if (!(c->flags & Client::Flag::NO_D6)) { + send_message_box(c, u""); + } static const vector version_to_port_name({ "bb-patch", "console-login", "pc-login", "console-login", "console-login", "bb-init"}); diff --git a/tests/BB-CreateCharGame.test.txt b/tests/BB-CreateCharGame.test.txt index 4c43e4c9..bf5f86a7 100644 --- a/tests/BB-CreateCharGame.test.txt +++ b/tests/BB-CreateCharGame.test.txt @@ -31077,8 +31077,6 @@ I 80350 2022-07-07 23:27:19 - [Commands] Received from C-8 (NO DATA) (version=BB 0010 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | I 80350 2022-07-07 23:27:19 - [Commands] Sending to C-8 (NO DATA) (version=BB command=0069 flag=00000000) 0000 | 0C 00 69 00 00 00 00 00 00 00 01 00 | i -I 80350 2022-07-07 23:27:19 - [Commands] Sending to C-8 (NO DATA) (version=BB command=001A flag=00000000) -0000 | 0C 00 D5 00 00 00 00 00 00 00 00 00 | I 80350 2022-07-07 23:27:19 - [Commands] Sending to C-8 (NO DATA) (version=BB command=0019 flag=00000000) 0000 | 10 00 19 00 00 00 00 00 0A 00 00 03 E0 2E 00 00 | . I 80350 2022-07-07 23:27:19 - [Server] Client disconnected: C-8 on fd 29 @@ -33645,8 +33643,6 @@ I 80350 2022-07-07 23:29:17 - [Commands] Received from C-A (NO DATA) (version=BB 0010 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | I 80350 2022-07-07 23:29:17 - [Commands] Sending to C-A (NO DATA) (version=BB command=0069 flag=00000000) 0000 | 0C 00 69 00 00 00 00 00 00 00 01 00 | i -I 80350 2022-07-07 23:29:17 - [Commands] Sending to C-A (NO DATA) (version=BB command=001A flag=00000000) -0000 | 0C 00 D5 00 00 00 00 00 00 00 00 00 | I 80350 2022-07-07 23:29:17 - [Commands] Sending to C-A (NO DATA) (version=BB command=0019 flag=00000000) 0000 | 10 00 19 00 00 00 00 00 0A 00 00 03 E0 2E 00 00 | . I 80350 2022-07-07 23:29:17 - [Server] Client disconnected: C-A on fd 29 diff --git a/tests/DCv1-GameSmokeTest.test.txt b/tests/DCv1-GameSmokeTest.test.txt index c8eae5c1..a4eb491e 100644 --- a/tests/DCv1-GameSmokeTest.test.txt +++ b/tests/DCv1-GameSmokeTest.test.txt @@ -515,8 +515,6 @@ I 69775 2022-08-27 09:37:06 - [Commands] Received from C-3 (Tali) (version=DC co 0010 | 00 00 00 00 00 00 00 00 00 00 00 00 | I 69775 2022-08-27 09:37:06 - [Commands] Sending to C-3 (Tali) (version=DC command=69 flag=00) 0000 | 69 00 08 00 00 00 01 00 | i -I 69775 2022-08-27 09:37:06 - [Commands] Sending to C-3 (Tali) (version=DC command=1A flag=00) -0000 | 1A 00 08 00 00 00 00 00 | I 69775 2022-08-27 09:37:06 - [Commands] Sending to C-3 (Tali) (version=DC command=19 flag=00) 0000 | 19 00 0C 00 0A 00 00 04 EC 13 00 00 | I 69775 2022-08-27 09:37:06 - [Server] Client disconnected: C-3 on fd 35 @@ -1601,8 +1599,6 @@ I 69775 2022-08-27 09:38:58 - [Commands] Received from C-5 (Tali) (version=DC co 0010 | 00 00 00 00 00 00 00 00 00 00 00 00 | I 69775 2022-08-27 09:38:58 - [Commands] Sending to C-5 (Tali) (version=DC command=69 flag=00) 0000 | 69 00 08 00 00 00 01 00 | i -I 69775 2022-08-27 09:38:58 - [Commands] Sending to C-5 (Tali) (version=DC command=1A flag=00) -0000 | 1A 00 08 00 00 00 00 00 | I 69775 2022-08-27 09:38:58 - [Commands] Sending to C-5 (Tali) (version=DC command=19 flag=00) 0000 | 19 00 0C 00 0A 00 00 04 EC 13 00 00 | I 69775 2022-08-27 09:38:59 - [Server] Client disconnected: C-5 on fd 35 diff --git a/tests/DCv2-GameSmokeTest.test.txt b/tests/DCv2-GameSmokeTest.test.txt index 8604f2d1..8e3de0c7 100644 --- a/tests/DCv2-GameSmokeTest.test.txt +++ b/tests/DCv2-GameSmokeTest.test.txt @@ -1273,8 +1273,6 @@ I 70630 2022-08-27 09:46:29 - [Commands] Received from C-3 (Tali) (version=DC co 0010 | 00 00 00 00 00 00 00 00 00 00 00 00 | I 70630 2022-08-27 09:46:29 - [Commands] Sending to C-3 (Tali) (version=DC command=69 flag=00) 0000 | 69 00 08 00 00 00 01 00 | i -I 70630 2022-08-27 09:46:29 - [Commands] Sending to C-3 (Tali) (version=DC command=1A flag=00) -0000 | 1A 00 08 00 00 00 00 00 | I 70630 2022-08-27 09:46:29 - [Commands] Sending to C-3 (Tali) (version=DC command=19 flag=00) 0000 | 19 00 0C 00 0A 00 00 04 EC 13 00 00 | I 70630 2022-08-27 09:46:30 - [Server] Client disconnected: C-3 on fd 35 diff --git a/tests/PC-BasicGame.test.txt b/tests/PC-BasicGame.test.txt index f2fc0c9b..821b35d4 100644 --- a/tests/PC-BasicGame.test.txt +++ b/tests/PC-BasicGame.test.txt @@ -2112,8 +2112,6 @@ I 80820 2022-07-07 23:37:10 - [Commands] Received from C-3 (Kallea) (version=PC 0010 | 00 00 00 00 00 00 00 00 00 00 00 00 | I 80820 2022-07-07 23:37:10 - [Commands] Sending to C-3 (Kallea) (version=PC command=69 flag=00) 0000 | 08 00 69 00 00 00 01 00 | i -I 80820 2022-07-07 23:37:10 - [Commands] Sending to C-3 (Kallea) (version=PC command=1A flag=00) -0000 | 08 00 1A 00 00 00 00 00 | I 80820 2022-07-07 23:37:10 - [Commands] Sending to C-3 (Kallea) (version=PC command=19 flag=00) 0000 | 0C 00 19 00 0A 00 00 03 ED 13 00 00 | T$ I 80820 2022-07-07 23:37:10 - [Server] Client disconnected: C-3 on fd 29