diff src/dmengine.c @ 1263:4e9deb14e67f

Fix audio sync with nosound.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 22 May 2015 20:41:53 +0300
parents 2bf7cb1e662f
children 5e5f75b45f8d
line wrap: on
line diff
--- a/src/dmengine.c	Thu May 21 13:41:38 2015 +0300
+++ b/src/dmengine.c	Fri May 22 20:41:53 2015 +0300
@@ -422,12 +422,12 @@
 }
 
 
-void enginePauseAudio(int status)
+void enginePauseAudio(DMEngineData *engine, int status)
 {
     if (status)
-        engine.audioStatus = SDL_AUDIO_PAUSED;
+        engine->audioStatus = SDL_AUDIO_PAUSED;
     else
-        engine.audioStatus = SDL_AUDIO_PLAYING;
+        engine->audioStatus = SDL_AUDIO_PLAYING;
 
     SDL_PauseAudio(status);
 }
@@ -497,7 +497,6 @@
     DMEngineData *engine = (DMEngineData *) userdata;
     if (engine == NULL)
         return 0;
-
     do
     {
         dmMutexLock(engine->audioStreamMutex);
@@ -543,7 +542,7 @@
         engine->audioSimBufSize = (engine->optAfmt.freq / 45) * engine->audioSampleSize;
         engine->audioSimBuf     = dmMalloc(engine->audioSimBufSize);
         engine->audioSimDone    = FALSE;
-        engine->audioSimThread  = SDL_CreateThread(engineAudioThreadFunc, NULL);
+        engine->audioSimThread  = SDL_CreateThread(engineAudioThreadFunc, engine);
         if (engine->audioSimThread == NULL)
             return DMERR_INIT_FAIL;
     }