diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index a38f9465763..dbd0edf709e 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -297,10 +297,12 @@
/obj/structure/table/glass/proc/table_shatter(mob/M)
visible_message("[src] breaks!",
"You hear breaking glass.")
- playsound(src.loc, "shatter", 50, 1)
- for(var/i in debris)
- var/atom/movable/AM = i
- AM.loc = get_turf(src)
+ var/turf/T = get_turf(src)
+ playsound(T, "shatter", 50, 1)
+ for(var/I in debris)
+ var/atom/movable/AM = I
+ AM.forceMove()T
+ debris -= I
if(istype(AM, /obj/item/weapon/shard))
AM.throw_impact(M)
M.Weaken(5)