diff --git a/code/game/gamemodes/technomancer/spell_objs.dm b/code/game/gamemodes/technomancer/spell_objs.dm index 3978ee543f9..be6d38e7018 100644 --- a/code/game/gamemodes/technomancer/spell_objs.dm +++ b/code/game/gamemodes/technomancer/spell_objs.dm @@ -188,10 +188,13 @@ // Parameters: 0 // Description: Nulls object references so it can qdel() cleanly. /obj/item/spell/Destroy() - owner.unref_spell(src) + if(owner) + owner.unref_spell(src) owner = null + core = null - return ..() + + . = ..() /// Check if we're still being held. Otherwise... time to qdel. /obj/item/spell/proc/check_owner() diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 6ce7cec5c94..140a6116ea3 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -253,7 +253,7 @@ src.loc = null if(!QDELETED(action)) - QDEL_NULL(action) /// /mob/living/proc/handle_actions() creates it, for ungodly reasons + QDEL_NULL(action) // /mob/living/proc/handle_actions() creates it, for ungodly reasons action = null if(!QDELETED(hidden_uplink)) @@ -261,7 +261,7 @@ hidden_uplink = null master = null - return ..() + . = ..() /obj/item/update_icon() . = ..() diff --git a/code/modules/psionics/abilities/grip.dm b/code/modules/psionics/abilities/grip.dm index 0fd57e0ad0e..30870361c74 100644 --- a/code/modules/psionics/abilities/grip.dm +++ b/code/modules/psionics/abilities/grip.dm @@ -18,10 +18,12 @@ var/mob/living/victim /obj/item/spell/grip/Destroy() - victim.SetStunned(0) - victim.update_canmove() + if(victim) + victim.SetStunned(0) + victim.update_canmove() victim = null - return ..() + + . = ..() /obj/item/spell/grip/on_use_cast(mob/user, bypass_psi_check) if(!victim) diff --git a/html/changelogs/fluffyghost-fixpossibleruntimegripspell.yml b/html/changelogs/fluffyghost-fixpossibleruntimegripspell.yml new file mode 100644 index 00000000000..73233799fd3 --- /dev/null +++ b/html/changelogs/fluffyghost-fixpossibleruntimegripspell.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: FluffyGhost + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Fixed a possible runtime issue that prevented the return hint from being returned to SSgarbage if the variable was empty."