summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Popov <pinkbyte@gentoo.org>2012-12-31 09:46:38 +0000
committerSergey Popov <pinkbyte@gentoo.org>2012-12-31 09:46:38 +0000
commit4c12e9fa8b9b43065936755f8d108852c61d5136 (patch)
tree6099cc1eb640cc12eb6d75050778e168b333994c /games-fps
parentStable for alpha, wrt bug #447012 (diff)
downloadgentoo-2-4c12e9fa8b9b43065936755f8d108852c61d5136.tar.gz
gentoo-2-4c12e9fa8b9b43065936755f8d108852c61d5136.tar.bz2
gentoo-2-4c12e9fa8b9b43065936755f8d108852c61d5136.zip
Fix openal-related code, wrt bug #436016. Thanks to <ghost99 AT mail.ru> for discovering this issue
(Portage version: 2.2.0_alpha144/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'games-fps')
-rw-r--r--games-fps/doomsday/ChangeLog7
-rw-r--r--games-fps/doomsday/doomsday-1.9.8.ebuild7
-rw-r--r--games-fps/doomsday/files/doomsday-1.9.8-openal-64bit-fix.patch34
3 files changed, 45 insertions, 3 deletions
diff --git a/games-fps/doomsday/ChangeLog b/games-fps/doomsday/ChangeLog
index f54cfffd50b1..2d965c458e64 100644
--- a/games-fps/doomsday/ChangeLog
+++ b/games-fps/doomsday/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for games-fps/doomsday
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-fps/doomsday/ChangeLog,v 1.48 2012/07/16 10:32:00 kensington Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-fps/doomsday/ChangeLog,v 1.49 2012/12/31 09:46:38 pinkbyte Exp $
+
+ 31 Dec 2012; Sergey Popov <pinkbyte@gentoo.org> doomsday-1.9.8.ebuild,
+ +files/doomsday-1.9.8-openal-64bit-fix.patch:
+ Fix openal-related code, wrt bug #436016. Thanks to <ghost99 AT mail.ru> for
+ discovering this issue
16 Jul 2012; Michael Palimaka <kensington@gentoo.org> doomsday-1.9.8.ebuild:
Add missing slot dependencies on Qt.
diff --git a/games-fps/doomsday/doomsday-1.9.8.ebuild b/games-fps/doomsday/doomsday-1.9.8.ebuild
index ed8ebbcce979..7c04b54672e7 100644
--- a/games-fps/doomsday/doomsday-1.9.8.ebuild
+++ b/games-fps/doomsday/doomsday-1.9.8.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-fps/doomsday/doomsday-1.9.8.ebuild,v 1.6 2012/07/16 10:32:00 kensington Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-fps/doomsday/doomsday-1.9.8.ebuild,v 1.7 2012/12/31 09:46:38 pinkbyte Exp $
EAPI=4
@@ -37,7 +37,10 @@ PDEPEND="
S=${S}/${PN}
REQUIRED_USE="demo? ( doom ) freedoom? ( doom ) resources? ( doom )"
-PATCHES=( "${FILESDIR}"/${P}-2to3.patch )
+PATCHES=(
+ "${FILESDIR}"/${P}-2to3.patch
+ "${FILESDIR}"/${P}-openal-64bit-fix.patch
+)
pkg_setup(){
python_pkg_setup
diff --git a/games-fps/doomsday/files/doomsday-1.9.8-openal-64bit-fix.patch b/games-fps/doomsday/files/doomsday-1.9.8-openal-64bit-fix.patch
new file mode 100644
index 000000000000..6c24bfb4480c
--- /dev/null
+++ b/games-fps/doomsday/files/doomsday-1.9.8-openal-64bit-fix.patch
@@ -0,0 +1,34 @@
+https://github.com/skyjake/Doomsday-Engine/commit/9c1fd1ee90d333332660c1aeef1addae93c2770e
+
+commit 9c1fd1ee90d333332660c1aeef1addae93c2770e
+Author: skyjake <skyjake@users.sf.net>
+Date: Sun Dec 30 16:45:56 2012 +0200
+
+ Fixed|OpenAL: Integer conversion in 64-bit build
+
+diff --git a/doomsday/plugins/openal/src/driver_openal.cpp b/doomsday/plugins/openal/src/driver_openal.cpp
+index dd3cb2e..683345b 100644
+--- a/doomsday/plugins/openal/src/driver_openal.cpp
++++ b/doomsday/plugins/openal/src/driver_openal.cpp
+@@ -56,8 +56,8 @@
+
+ #define PI 3.141592654
+
+-#define SRC(buf) ((ALuint)buf->ptr3D)
+-#define BUF(buf) ((ALuint)buf->ptr)
++#define SRC(buf) ( (ALuint) PTR2INT(buf->ptr3D) )
++#define BUF(buf) ( (ALuint) PTR2INT(buf->ptr) )
+
+ //enum { VX, VY, VZ };
+
+@@ -233,8 +233,8 @@ sfxbuffer_t* DS_SFX_CreateBuffer(int flags, int bits, int rate)
+ // Create the buffer object.
+ buf = static_cast<sfxbuffer_t*>(Z_Calloc(sizeof(*buf), PU_APPSTATIC, 0));
+
+- buf->ptr = (void*) bufName;
+- buf->ptr3D = (void*) srcName;
++ buf->ptr = INT2PTR(void, bufName);
++ buf->ptr3D = INT2PTR(void, srcName);
+ buf->bytes = bits / 8;
+ buf->rate = rate;
+ buf->flags = flags;