[Scummvm-cvs-logs] CVS: residual smush.h,1.19,1.20 timer.cpp,1.7,1.8 timer.h,1.5,1.6

Pawel Kolodziejski aquadran at users.sourceforge.net
Sat Mar 27 07:53:02 CET 2004


Update of /cvsroot/scummvm/residual
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10071

Modified Files:
	smush.h timer.cpp timer.h 
Log Message:
mutex was not set to variable before

Index: smush.h
===================================================================
RCS file: /cvsroot/scummvm/residual/smush.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- smush.h	26 Mar 2004 22:37:46 -0000	1.19
+++ smush.h	27 Mar 2004 15:41:32 -0000	1.20
@@ -56,7 +56,6 @@
 	zlibFile _file;
 	PlayingSoundHandle _soundHandle;
 	AppendableAudioStream *_stream;
-	MutexRef _timerMutex;
 
  	int32 _frame;
 	bool _updateNeeded;

Index: timer.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/timer.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- timer.cpp	27 Mar 2004 14:52:31 -0000	1.7
+++ timer.cpp	27 Mar 2004 15:41:32 -0000	1.8
@@ -22,19 +22,15 @@
 #include <SDL.h>
 
 Timer *g_timer = NULL;
-bool g_timerLock;
-bool g_timerCallbackRunning;
 
 Timer::Timer() :
 	_mutex(0),
 	_timerHandler(0),
 	_lastTime(0) {
 
-	create_mutex();
+	_mutex = create_mutex();
 
 	g_timer = this;
-	g_timerLock = false;
-	g_timerCallbackRunning = false;
 
 	for (int i = 0; i < MAX_TIMERS; i++) {
 		_timerSlots[i].procedure = NULL;
@@ -70,9 +66,6 @@
 	// we might end up unlocking the mutex then immediately deleting it, while
 	// the timer thread is about to lock it.
 	delete_mutex(_mutex);
-
-	g_timerLock = false;
-	g_timerCallbackRunning = false;
 }
 
 int Timer::timer_handler(int t) {
@@ -85,13 +78,6 @@
 	StackLock lock(_mutex);
 	uint32 interval, l;
 
-	g_timerCallbackRunning = true;
-
-	if (g_timerLock) {
-		g_timerCallbackRunning = false;
-		return t;
-	}
-
 	_lastTime = _thisTime;
 	_thisTime = SDL_GetTicks();
 	interval = 1000 * (_thisTime - _lastTime);
@@ -109,8 +95,6 @@
 		}
 	}
 
-	g_timerCallbackRunning = false;
-
 	return t;
 }
 
@@ -118,22 +102,16 @@
 	assert(interval > 0);
 	StackLock lock(_mutex);
 
-	g_timerLock = true;
-	while (g_timerCallbackRunning) {};
-
 	for (int l = 0; l < MAX_TIMERS; l++) {
 		if (!_timerSlots[l].procedure) {
 			_timerSlots[l].procedure = procedure;
 			_timerSlots[l].interval = interval;
 			_timerSlots[l].counter = interval;
 			_timerSlots[l].refCon = refCon;
-			g_timerLock = false;
 			return true;
 		}
 	}
 
-	g_timerLock = false;
-
 	warning("Couldn't find free timer slot!");
 	return false;
 }
@@ -141,9 +119,6 @@
 void Timer::removeTimerProc(TimerProc procedure) {
 	StackLock lock(_mutex);
 
-	g_timerLock = true;
-	while (g_timerCallbackRunning) {};
-
 	for (int l = 0; l < MAX_TIMERS; l++) {
 		if (_timerSlots[l].procedure == procedure) {
 			_timerSlots[l].procedure = 0;
@@ -152,6 +127,4 @@
 			_timerSlots[l].refCon = 0;
 		}
 	}
-
-	g_timerLock = false;
 }

Index: timer.h
===================================================================
RCS file: /cvsroot/scummvm/residual/timer.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- timer.h	27 Mar 2004 14:52:31 -0000	1.5
+++ timer.h	27 Mar 2004 15:41:32 -0000	1.6
@@ -69,8 +69,6 @@
 };
 
 extern Timer *g_timer;
-extern bool g_timerLock;
-extern bool g_timerCallbackRunning;
 
 #endif
 





More information about the Scummvm-git-logs mailing list