aboutsummaryrefslogtreecommitdiffstats
path: root/code
diff options
context:
space:
mode:
Diffstat (limited to 'code')
-rw-r--r--code/client/snd_openal.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/code/client/snd_openal.c b/code/client/snd_openal.c
index 0387875..a557244 100644
--- a/code/client/snd_openal.c
+++ b/code/client/snd_openal.c
@@ -1460,6 +1460,8 @@ S_AL_Respatialize
static
void S_AL_Respatialize( int entityNum, const vec3_t origin, vec3_t axis[3], int inwater )
{
+// this piece of code causes an compiler error on msvc (MSDN 58559)
+#ifndef _MSC_VER
S_AL_SanitiseVector( (vec_t *)origin );
S_AL_SanitiseVector( axis[ 0 ] );
S_AL_SanitiseVector( axis[ 1 ] );
@@ -1469,6 +1471,18 @@ void S_AL_Respatialize( int entityNum, const vec3_t origin, vec3_t axis[3], int
float velocity[] = {0.0f, 0.0f, 0.0f};
float orientation[] = {axis[0][0], axis[0][1], axis[0][2],
axis[2][0], axis[2][1], axis[2][2]};
+#else
+ float velocity[3] = {0.0f, 0.0f, 0.0f};
+ float orientation[6];
+
+ S_AL_SanitiseVector( (vec_t *)origin );
+ S_AL_SanitiseVector( axis[ 0 ] );
+ S_AL_SanitiseVector( axis[ 1 ] );
+ S_AL_SanitiseVector( axis[ 2 ] );
+
+ orientation[0] = axis[0][0]; orientation[1] = axis[0][1]; orientation[2] = axis[0][2];
+ orientation[3] = axis[2][0]; orientation[4] = axis[2][1]; orientation[5] = axis[2][2];
+#endif
VectorCopy( origin, lastListenerOrigin );