Merge pull request #7766 from Sindorman/Sindorman/GC

Fixing GC issues with pipes
This commit is contained in:
Werner
2019-12-22 14:57:15 +01:00
committed by GitHub
6 changed files with 57 additions and 23 deletions
-4
View File
@@ -45,10 +45,6 @@ Pipelines + Other Objects -> Pipe network
if (mapload)
return INITIALIZE_HINT_LATELOAD
/obj/machinery/atmospherics/Destroy()
..()
return QDEL_HINT_HARDDEL // fuck it
/obj/machinery/atmospherics/proc/atmos_init()
// atmos_init() and Initialize() must be separate, as atmos_init() can be called multiple times after the machine has been initialized.
@@ -54,6 +54,10 @@
/obj/machinery/atmospherics/unary/vent_scrubber/Destroy()
unregister_radio(src, frequency)
if(initial_loc)
initial_loc.air_scrub_info -= id_tag
initial_loc.air_scrub_names -= id_tag
return ..()
/obj/machinery/atmospherics/unary/vent_scrubber/update_icon(var/safety = 0)
@@ -310,9 +314,4 @@
if(welded)
to_chat(user, "It seems welded shut.")
/obj/machinery/atmospherics/unary/vent_scrubber/Destroy()
if(initial_loc)
initial_loc.air_scrub_info -= id_tag
initial_loc.air_scrub_names -= id_tag
return ..()
+1 -1
View File
@@ -84,7 +84,7 @@
line_members = null
for (var/obj/machinery/atmospherics/thing in normal_members)
thing.remove_network(src)
thing.reassign_network(src, null)
normal_members = null
+2
View File
@@ -20,6 +20,8 @@
for (var/obj/machinery/atmospherics/pipe/thing in members)
thing.parent = null
members = null
return ..()
/datum/pipeline/process()//This use to be called called from the pipe networks
+9 -13
View File
@@ -67,7 +67,6 @@
QDEL_NULL(parent)
if(air_temporary)
loc.assume_air(air_temporary)
QDEL_NULL(air_temporary)
return ..()
@@ -233,11 +232,10 @@
/obj/machinery/atmospherics/pipe/simple/Destroy()
if(node1)
node1.disconnect(src)
node1 = null
if(node2)
node2.disconnect(src)
node1 = null
node2 = null
node2 = null
return ..()
@@ -467,14 +465,13 @@
/obj/machinery/atmospherics/pipe/manifold/Destroy()
if(node1)
node1.disconnect(src)
node1 = null
if(node2)
node2.disconnect(src)
node2 = null
if(node3)
node3.disconnect(src)
node1 = null
node2 = null
node3 = null
node3 = null
return ..()
@@ -712,17 +709,16 @@
/obj/machinery/atmospherics/pipe/manifold4w/Destroy()
if(node1)
node1.disconnect(src)
node1 = null
if(node2)
node2.disconnect(src)
node2 = null
if(node3)
node3.disconnect(src)
node3 = null
if(node4)
node4.disconnect(src)
node1 = null
node2 = null
node3 = null
node4 = null
node4 = null
return ..()