SDL_mixer: fix angle adjusment in Mix_SetPosition (github bug #261)

From 81b88d9b6ceb9bb179faef5dcb47eccc1a954b4b Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Thu, 18 Feb 2021 18:15:00 +0300
Subject: [PATCH] fix angle adjusment in Mix_SetPosition (github bug #261)

---
 effect_position.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/effect_position.c b/effect_position.c
index 8802c0c..5e23c2b 100644
--- a/effect_position.c
+++ b/effect_position.c
@@ -1550,7 +1550,9 @@ int Mix_SetPosition(int channel, Sint16 angle, Uint8 distance)
     if (f == NULL)
         return(0);
 
-    angle = SDL_abs(angle) % 360;  /* make angle between 0 and 359. */
+    /* make angle between 0 and 359. */
+    angle %= 360;
+    if (angle < 0) angle += 360;
 
     SDL_LockAudio();
     args = get_position_arg(channel);