# HG changeset patch # User unc0rr # Date 1206131688 0 # Node ID 7069f18517e9e42ac6a0c7fe0582e8ee89c41bee # Parent 235d56fe19f409b4134d8e61c45b50bdb0163799 Fix accessing to freed memory diff -r 235d56fe19f4 -r 7069f18517e9 hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Thu Mar 20 23:44:19 2008 +0000 +++ b/hedgewars/GSHandlers.inc Fri Mar 21 20:34:48 2008 +0000 @@ -1033,6 +1033,7 @@ procedure doStepParachute(Gear: PGear); var HHGear: PGear; + Timer: Longword; begin HHGear:= PHedgehog(Gear^.Hedgehog)^.Gear; HHGear^.State:= HHGear^.State and not gstAttacking; @@ -1052,8 +1053,9 @@ State:= State and not (gstAttacking or gstAttacked); State:= State or gstMoving; end; + Timer:= Gear^.Timer; DeleteGear(Gear); - if Gear^.Timer > 10 then + if Timer > 10 then begin OnUsedAmmo(PHedgehog(HHGear^.Hedgehog)^); ApplyAmmoChanges(PHedgehog(HHGear^.Hedgehog)^)