[SCM] Packaging for the OpenArena engine branch, master, updated. debian/0.8.5-3-8-ga4adf4d

Simon McVittie smcv at debian.org
Mon Oct 11 23:04:45 UTC 2010


The following commit has been merged in the master branch:
commit a4adf4de3ecb47539d9f826280fefc944f3f5e9f
Author: Simon McVittie <smcv at debian.org>
Date:   Tue Oct 12 00:00:23 2010 +0100

    Fix an unlikely crash if a non-client object is damaged by a non-player source

diff --git a/debian/changelog b/debian/changelog
index f0e3bd8..b2fe1a9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,8 @@ openarena (0.8.5-5) UNRELEASED; urgency=low
   * Set up debian/rules so DEB_BUILD_OPTIONS="noopt" does a debug build
   * Install example scripts to debug OpenArena with gdb, as
     /usr/share/games/openarena/openarena{,-server}-gdb
+  * Fix an unlikely crash if a non-client object is damaged by a non-player
+    source
 
  -- Simon McVittie <smcv at debian.org>  Mon, 11 Oct 2010 19:40:30 +0100
 
diff --git a/debian/patches/0042-G_Damage-check-before-dereferencing-targ-client-whic.patch b/debian/patches/0042-G_Damage-check-before-dereferencing-targ-client-whic.patch
new file mode 100644
index 0000000..2fdaf83
--- /dev/null
+++ b/debian/patches/0042-G_Damage-check-before-dereferencing-targ-client-whic.patch
@@ -0,0 +1,25 @@
+From 80f2967f82314bf10e975d1b00678b9b4327eae9 Mon Sep 17 00:00:00 2001
+From: Simon McVittie <smcv at debian.org>
+Date: Mon, 11 Oct 2010 23:28:51 +0100
+Subject: [PATCH] G_Damage: check before dereferencing targ->client, which may be NULL
+
+---
+ game/code/game/g_combat.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/game/code/game/g_combat.c b/game/code/game/g_combat.c
+index 22ce65a..7d1fba7 100644
+--- a/game/code/game/g_combat.c
++++ b/game/code/game/g_combat.c
+@@ -1043,7 +1043,7 @@ void G_Damage( gentity_t *targ, gentity_t *inflictor, gentity_t *attacker,
+         
+         //Sago: See if the client was sent flying
+         //Check if damage is by somebody who is not a player!
+-        if( (!attacker || attacker->s.eType != ET_PLAYER) && client->lastSentFlying>-1 && ( mod==MOD_FALLING || mod==MOD_LAVA || mod==MOD_SLIME || mod==MOD_TRIGGER_HURT || mod==MOD_SUICIDE) )  {
++        if( (!attacker || attacker->s.eType != ET_PLAYER) && client && client->lastSentFlying>-1 && ( mod==MOD_FALLING || mod==MOD_LAVA || mod==MOD_SLIME || mod==MOD_TRIGGER_HURT || mod==MOD_SUICIDE) )  {
+             if( client->lastSentFlyingTime+5000<level.time) {
+                 client->lastSentFlying = -1; //More than 5 seconds, not a kill!
+             } else {
+-- 
+1.7.1
+
diff --git a/debian/patches/series b/debian/patches/series
index 485ad3a..9a9f298 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -33,3 +33,4 @@
 0039-Used-self-enemy-before-it-was-initialized.-Might-hav.patch
 0040-Add-OPENARENA_081_COMPATIBLE-define-for-network-comp.patch
 0041-If-a-QVM-starts-with-NTVE-followed-by-a-nonempty-str.patch
+0042-G_Damage-check-before-dereferencing-targ-client-whic.patch

-- 
Packaging for the OpenArena engine



More information about the Pkg-games-commits mailing list