From dbc2902fc193dae430ddea79bd59de764f9065cc Mon Sep 17 00:00:00 2001 From: Chompstation Bot Date: Sat, 27 Feb 2021 15:06:52 +0000 Subject: [PATCH] Steals and fixes a memory leak fix from the freeloaders --- code/_helpers/global_lists.dm | 18 ++++++++++++++++++ .../client/preference_setup/vore/02_size.dm | 3 +-- .../mob/living/carbon/human/update_icons.dm | 3 +++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index 23cdf8b171..1d8f16087a 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -93,6 +93,7 @@ var/global/list/string_slot_flags = list( "holster" = SLOT_HOLSTER ) +<<<<<<< HEAD //CHOMP Edit: This fix is taken from citadel station pr #2779. Fixes a "pretty horrific memory leak" that is called any time someone opens character creator. GLOBAL_LIST_EMPTY(mannequins) /proc/get_mannequin(var/ckey = "NULL") @@ -101,6 +102,23 @@ GLOBAL_LIST_EMPTY(mannequins) GLOB.mannequins[ckey] = new /mob/living/carbon/human/dummy/mannequin(null) M = GLOB.mannequins[ckey] return M +||||||| parent of 881bc76902... Merge pull request #9805 from Verkister/blurgh +/proc/get_mannequin(var/ckey) + if(!mannequins_) + mannequins_ = new() + . = mannequins_[ckey] + if(!.) + . = new/mob/living/carbon/human/dummy/mannequin() + mannequins_[ckey] = . +======= +GLOBAL_LIST_EMPTY(mannequins) +/proc/get_mannequin(var/ckey = "NULL") + var/mob/living/carbon/human/dummy/mannequin/M = GLOB.mannequins[ckey] + if(!istype(M)) + GLOB.mannequins[ckey] = new /mob/living/carbon/human/dummy/mannequin(null) + M = GLOB.mannequins[ckey] + return M +>>>>>>> 881bc76902... Merge pull request #9805 from Verkister/blurgh ////////////////////////// /////Initial Building///// diff --git a/code/modules/client/preference_setup/vore/02_size.dm b/code/modules/client/preference_setup/vore/02_size.dm index 774bdede17..a1149821d2 100644 --- a/code/modules/client/preference_setup/vore/02_size.dm +++ b/code/modules/client/preference_setup/vore/02_size.dm @@ -45,7 +45,6 @@ character.weight_gain = pref.weight_gain character.weight_loss = pref.weight_loss character.fuzzy = pref.fuzzy - character.appearance_flags -= pref.fuzzy*PIXEL_SCALE character.resize(pref.size_multiplier, animate = FALSE) /datum/category_item/player_setup_item/vore/size/content(var/mob/user) @@ -70,7 +69,7 @@ else if(href_list["toggle_fuzzy"]) pref.fuzzy = pref.fuzzy ? 0 : 1; - return TOPIC_REFRESH + return TOPIC_REFRESH_UPDATE_PREVIEW else if(href_list["weight"]) var/new_weight = input(user, "Choose your character's relative body weight.\n\ diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index da4e871c1e..ed7935e871 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -141,6 +141,9 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon() var/desired_scale_y = size_multiplier * icon_scale_y desired_scale_x *= species.icon_scale_x desired_scale_y *= species.icon_scale_y + appearance_flags |= PIXEL_SCALE + if(fuzzy) + appearance_flags &= ~PIXEL_SCALE //VOREStation Edit End // Regular stuff again.