anchor.diff:  
   	for (var/TT in masters)
   		var/turf/T = TT
  -		if (T.lighting_object)
  -			if (!T.lighting_object.needs_update)
  -				T.lighting_object.needs_update = TRUE
  -				SSlighting.objects_queue += T.lighting_object
  +		if (T.lighting_object && !T.lighting_object.needs_update)
  +			T.lighting_object.needs_update = TRUE
  +			SSlighting.objects_queue += T.lighting_object
   
   
   /datum/lighting_corner/dummy/New()
   	return
   
  -
  -/datum/lighting_corner/Destroy(var/force)
  +/datum/lighting_corner/Destroy(force)
   	if (!force)
   		return QDEL_HINT_LETMELIVE
   
  
positive.code: 		SSlighting.corners_queue += src
  
  /datum/lighting_corner/proc/update_objects()
  	// Cache these values a head of time so 4 individual lighting objects don't all calculate them individually.
  	var/lum_r = src.lum_r
  	var/lum_g = src.lum_g
  	var/lum_b = src.lum_b
  
negative.code: 		T = thing
  		if (T.lighting_object)
  			active = TRUE
  			return
  
  // God that was a mess, now to do the rest of the corner code! Hooray!
  /datum/lighting_corner/proc/update_lumcount(delta_r, delta_g, delta_b)
  	if (!(delta_r || delta_g || delta_b)) // 0 is falsey ok
  		return
  
  	lum_r += delta_r
  