summary refs log tree commit diff
path: root/pkgs/games/exult
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2008-06-25 15:33:07 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2008-06-25 15:33:07 +0000
commitdf50191ff5b64c2cb4bb4bc52d5f167c6909cef0 (patch)
treee49b31d682d3df25a40aa6823b8a40bd3ce76b32 /pkgs/games/exult
parent677be83122ea07efe2a6a7c90dcb7d75e6c95f9d (diff)
downloadnixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.tar
nixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.tar.gz
nixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.tar.bz2
nixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.tar.lz
nixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.tar.xz
nixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.tar.zst
nixpkgs-df50191ff5b64c2cb4bb4bc52d5f167c6909cef0.zip
* Really fix Exult on x86_64 now.
svn path=/nixpkgs/trunk/; revision=12188
Diffstat (limited to 'pkgs/games/exult')
-rw-r--r--pkgs/games/exult/64bits.patch21
-rw-r--r--pkgs/games/exult/default.nix3
2 files changed, 24 insertions, 0 deletions
diff --git a/pkgs/games/exult/64bits.patch b/pkgs/games/exult/64bits.patch
new file mode 100644
index 00000000000..49c67cd2f05
--- /dev/null
+++ b/pkgs/games/exult/64bits.patch
@@ -0,0 +1,21 @@
+diff -ru exult-1.2-orig/usecode/useval.cc exult-1.2/usecode/useval.cc
+--- exult-1.2-orig/usecode/useval.cc	2004-05-23 07:07:11.000000000 +0200
++++ exult-1.2/usecode/useval.cc	2008-06-25 17:27:15.000000000 +0200
+@@ -464,7 +464,7 @@
+ 		if (buflen < 5)
+ 			return -1;
+ 		*ptr++ = type;
+-		Write4(ptr, (int)value.ptr);
++		Write4(ptr, 0);
+ 		break;
+ 	case string_type:
+ 		{
+@@ -525,7 +525,7 @@
+ 	case pointer_type:
+ 		if (buflen < 5)
+ 			return false;
+-		value.ptr = (Game_object*)Read4(ptr); //DON'T dereference this pointer!
++		value.ptr = 0; //DON'T dereference this pointer!
+ 		// Maybe add a new type "serialized_pointer" to prevent "accidents"?
+ 		return true;
+ 	case string_type:
diff --git a/pkgs/games/exult/default.nix b/pkgs/games/exult/default.nix
index 35ef94c69db..e6a25f6a163 100644
--- a/pkgs/games/exult/default.nix
+++ b/pkgs/games/exult/default.nix
@@ -15,6 +15,9 @@ stdenv.mkDerivation {
       url = "http://www.rocklinux.net/sources/package/stf/exult/exult-gcc4.patch";
       sha256 = "1jlikxcpsi3yfchan3jbyi66fcyr18m7kfmsa946lwh3kzckszm7";
     })
+
+    # From http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/games-engines/exult/files/exult-1.2-64bits.patch?rev=1.1
+    ./64bits.patch
   ];
 
   buildInputs = [SDL SDL_mixer zlib libpng unzip];