From: Rudolf Polzer Date: Wed, 5 Dec 2012 05:33:47 +0000 (+0100) Subject: Ent_Remove: delete skeletonobjects if there are any X-Git-Tag: xonotic-v0.7.0~99^2~22 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=0b01af33f4f52b0ef253a709602ac53a1f96fb1a;p=xonotic%2Fxonotic-data.pk3dir.git Ent_Remove: delete skeletonobjects if there are any This fixes the memory leak CSAD had. --- 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); } }