From e0c72b16b33d6944c283cd19a5e75fb6d10bfe5f Mon Sep 17 00:00:00 2001 From: Mothblocks <35135081+Mothblocks@users.noreply.github.com> Date: Mon, 26 Jul 2021 03:59:24 -0700 Subject: [PATCH] Fix runtime when deleting crossbows/syringe guns (#60421) --- code/modules/projectiles/gun.dm | 2 +- code/modules/unit_tests/_unit_tests.dm | 1 + code/modules/unit_tests/deletions.dm | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 code/modules/unit_tests/deletions.dm diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 61d6b9b35b2..313fea71fdd 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -97,7 +97,7 @@ QDEL_NULL(chambered) if(azoom) QDEL_NULL(azoom) - if(suppressed) + if(isatom(suppressed)) QDEL_NULL(suppressed) return ..() diff --git a/code/modules/unit_tests/_unit_tests.dm b/code/modules/unit_tests/_unit_tests.dm index 98b9353a74a..3226ee2daa1 100644 --- a/code/modules/unit_tests/_unit_tests.dm +++ b/code/modules/unit_tests/_unit_tests.dm @@ -52,6 +52,7 @@ #include "connect_loc.dm" #include "confusion.dm" #include "crayons.dm" +#include "deletions.dm" #include "designs.dm" #include "dynamic_ruleset_sanity.dm" #include "egg_glands.dm" diff --git a/code/modules/unit_tests/deletions.dm b/code/modules/unit_tests/deletions.dm new file mode 100644 index 00000000000..fe0fdf658b5 --- /dev/null +++ b/code/modules/unit_tests/deletions.dm @@ -0,0 +1,7 @@ +/// This is for regression tests of deletions that used to runtime. +/// This would ideally be replaced by Del The World, unit testing every single deletion. +/datum/unit_test/deletion_regressions + +/datum/unit_test/deletion_regressions/Run() + qdel(new /obj/item/gun/energy/kinetic_accelerator/crossbow) + qdel(new /obj/item/gun/syringe/syndicate)