diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index e73490e91b4..cf16100d401 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -286,10 +286,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 -= AM
if(istype(AM, /obj/item/weapon/shard))
AM.throw_impact(M)
M.Weaken(5)