From fbc214d26a66ee97044c62bb4e6fe64dadc6cbb2 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Wed, 14 Dec 2022 05:59:00 +0100 Subject: [PATCH] [MIRROR] Moves space initialization check to unit test - Saves 0.065s of init time [MDB IGNORE] (#18126) * Moves space initialization check to unit test - Saves 0.065s of init time (#71796) This hasn't been hit in a long time and this is an extremely hot proc, doing these checks in unit tests should catch any cases, though unlikely. This has zero cost at runtime because `if (FALSE)` statically compiles out. * Moves space initialization check to unit test - Saves 0.065s of init time Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> --- code/game/turfs/open/space/space.dm | 5 +++-- code/modules/unit_tests/focus_only_tests.dm | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/code/game/turfs/open/space/space.dm b/code/game/turfs/open/space/space.dm index 61e80e642ab..3829805e70d 100644 --- a/code/game/turfs/open/space/space.dm +++ b/code/game/turfs/open/space/space.dm @@ -55,8 +55,9 @@ icon_state = SPACE_ICON_STATE(x, y, z) air = space_gas - if(flags_1 & INITIALIZED_1) - stack_trace("Warning: [src]([type]) initialized multiple times!") + if (PERFORM_ALL_TESTS(focus_only/multiple_space_initialization)) + if(flags_1 & INITIALIZED_1) + stack_trace("Warning: [src]([type]) initialized multiple times!") flags_1 |= INITIALIZED_1 diff --git a/code/modules/unit_tests/focus_only_tests.dm b/code/modules/unit_tests/focus_only_tests.dm index 43f7d9ef5a3..05d07a513cc 100644 --- a/code/modules/unit_tests/focus_only_tests.dm +++ b/code/modules/unit_tests/focus_only_tests.dm @@ -15,5 +15,8 @@ /// Checks that every icon sent to vending machines is valid /datum/unit_test/focus_only/invalid_vending_machine_icon_states +/// Checks that space does not initialize multiple times +/datum/unit_test/focus_only/multiple_space_initialization + /// Checks that smoothing_groups and canSmoothWith are properly sorted in /atom/Initialize /datum/unit_test/focus_only/sorted_smoothing_groups