From 0b01af33f4f52b0ef253a709602ac53a1f96fb1a Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Wed, 5 Dec 2012 06:33:47 +0100 Subject: [PATCH] Ent_Remove: delete skeletonobjects if there are any This fixes the memory leak CSAD had. --- qcsrc/client/Main.qc | 6 ++++++ qcsrc/client/player_skeleton.qc | 1 - 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/qcsrc/client/Main.qc b/qcsrc/client/Main.qc index c7a66a868..7145becc0 100644 --- a/qcsrc/client/Main.qc +++ b/qcsrc/client/Main.qc @@ -791,6 +791,12 @@ void Ent_Remove() if(self.entremove) self.entremove(); + if(self.skeletonindex) + { + skel_delete(self.skeletonindex); + self.skeletonindex = 0; + } + self.enttype = 0; self.classname = ""; self.draw = menu_sub_null; diff --git a/qcsrc/client/player_skeleton.qc b/qcsrc/client/player_skeleton.qc index 6dd895a6a..48fb8a34b 100644 --- a/qcsrc/client/player_skeleton.qc +++ b/qcsrc/client/player_skeleton.qc @@ -50,7 +50,6 @@ void skeleton_from_frames(entity e) if(m) { e.skeletonindex = skel_create(m); - // FIXME LEAKED if player is removed skeleton_identifybones(e); } } -- 2.39.2