summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/win32/emu.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/win32/emu.cpp b/lib/win32/emu.cpp
index 16c4a2ef..7ee2b5a1 100644
--- a/lib/win32/emu.cpp
+++ b/lib/win32/emu.cpp
@@ -44,7 +44,14 @@ int setitimer(int type, struct itimerval *timeout, void *arg)
{
ASSERT(gTimerInitialised);
+ if (ITIMER_REAL != type)
+ {
+ errno = ENOSYS;
+ return -1;
+ }
+
EnterCriticalSection(&gLock);
+
// we only need seconds for the mo!
if (timeout->it_value.tv_sec == 0 &&
timeout->it_value.tv_usec == 0)
@@ -58,6 +65,7 @@ int setitimer(int type, struct itimerval *timeout, void *arg)
ourTimer.interval = timeout->it_interval.tv_sec;
gTimerList.push_back(ourTimer);
}
+
LeaveCriticalSection(&gLock);
// indicate success