From df807b33c4b87434247efbd7df8e0382388bb4f8 Mon Sep 17 00:00:00 2001 From: VMSolidus Date: Tue, 26 May 2026 13:57:49 -0400 Subject: [PATCH] More Misc Sentry Fixes (#22496) Sorting runtime errors by most events in the past 2 weeks, here's a few fixes for the following: https://aurorastation.sentry.io/issues/7472147004 - Runtime when someone attempts to move before their character is placed in the world. https://aurorastation.sentry.io/issues/7443212526 - Runtime when harvesting plants https://aurorastation.sentry.io/issues/7466716994 - Runtime when vampires try to drink a bloodbag https://aurorastation.sentry.io/issues/7496800530 - Runtime when a player disconnects while a tgui window is open. --- code/modules/hydroponics/seed.dm | 2 +- code/modules/mob/living/carbon/human/human_movement.dm | 2 +- code/modules/reagents/reagent_containers/blood_pack.dm | 2 +- code/modules/tgui_input/number.dm | 5 +++++ code/modules/tgui_input/text.dm | 6 ++++++ html/changelogs/hellfirejag-misc-sentry-fixes.yml | 7 +++++++ 6 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 html/changelogs/hellfirejag-misc-sentry-fixes.yml diff --git a/code/modules/hydroponics/seed.dm b/code/modules/hydroponics/seed.dm index 28bc309bbf4..55b442566f5 100644 --- a/code/modules/hydroponics/seed.dm +++ b/code/modules/hydroponics/seed.dm @@ -790,7 +790,7 @@ return user.visible_message(SPAN_WARNING("[user] starts harvesting \the [display_name]")) - if (doafter > 0 && !do_after(user, doafter, src)) + if (doafter > 0 && !do_after(user, doafter)) to_chat(user, SPAN_DANGER("You were interrupted while trying to harvest \the [display_name]")) return diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index aae22c8172f..6eb6fd802d7 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -141,7 +141,7 @@ if(!footsound) footsound = T.footstep_sound - if (client) + if (client && T) var/turf/T1 = GET_TURF_ABOVE(T) if(up_hint) up_hint.icon_state = "uphint[(T1 ? !!isopenturf(T1) : 0)]" diff --git a/code/modules/reagents/reagent_containers/blood_pack.dm b/code/modules/reagents/reagent_containers/blood_pack.dm index 77056b0d9f3..b79d5b4f4b4 100644 --- a/code/modules/reagents/reagent_containers/blood_pack.dm +++ b/code/modules/reagents/reagent_containers/blood_pack.dm @@ -85,7 +85,7 @@ LAZYADD(src.other_DNA, target_mob.dna.unique_enzymes) src.other_DNA_type = "saliva" - while (do_after(user, 25, 5)) + while (do_after(user, 25, src)) var/blood_taken = 0 blood_taken = min(5, REAGENT_VOLUME(reagents, /singleton/reagent/blood)/4) diff --git a/code/modules/tgui_input/number.dm b/code/modules/tgui_input/number.dm index 988d344112b..8eb489be1f0 100644 --- a/code/modules/tgui_input/number.dm +++ b/code/modules/tgui_input/number.dm @@ -24,6 +24,8 @@ user = client.mob else return + if (!user.client) + return // Client does NOT have tgui_input on: Returns regular input if(!user.client.prefs.tgui_inputs) var/input_number = input(user, message, title, default) as null|num @@ -111,6 +113,9 @@ return GLOB.always_state /datum/tgui_input_number/ui_static_data(mob/user) + if (!user.client) + return list() + var/list/data = list() data["init_value"] = default // Default is a reserved keyword data["large_buttons"] = user.client.prefs.tgui_buttons_large diff --git a/code/modules/tgui_input/text.dm b/code/modules/tgui_input/text.dm index 32021830c2c..c934a4276a6 100644 --- a/code/modules/tgui_input/text.dm +++ b/code/modules/tgui_input/text.dm @@ -24,6 +24,9 @@ user = client.mob else return + if (!user.client) + return + // Client does NOT have tgui_input on: Returns regular input if(!user.client.prefs.tgui_inputs) if(encode) @@ -109,6 +112,9 @@ return GLOB.always_state /datum/tgui_input_text/ui_static_data(mob/user) + if (!user.client) + return list() + var/list/data = list() data["large_buttons"] = user.client.prefs.tgui_buttons_large data["swapped_buttons"] = user.client.prefs.tgui_inputs_swapped diff --git a/html/changelogs/hellfirejag-misc-sentry-fixes.yml b/html/changelogs/hellfirejag-misc-sentry-fixes.yml new file mode 100644 index 00000000000..91fa5c462b8 --- /dev/null +++ b/html/changelogs/hellfirejag-misc-sentry-fixes.yml @@ -0,0 +1,7 @@ +author: Hellfirejag +delete-after: True +changes: + - bugfix: "Fixed a runtime error caused by vampires trying to drink from a blood bag." + - bugfix: "Fixed a niche runtime error that occurs occasionally during late spawns." + - bugfix: "Fixed a runtime when harvesting plants." + - bugfix: "Fixed a runtime caused when a player disconnects while a tgui input window is open."