diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp
index 50e03b58a6b40ab6356d14b2a9e36af440436134..5224db01e6acfecbd2d9a9c0dff2c1df07c4f157 100644
--- a/src/sbbs3/main.cpp
+++ b/src/sbbs3/main.cpp
@@ -305,7 +305,7 @@ DLLEXPORT void DLLCALL sbbs_srand()
 	}
 	if(rd != sizeof(seed))
 #endif
-		seed = time32(NULL) ^ (DWORD)GetCurrentThreadId();
+		seed = time32(NULL) ^ (uintmax_t)GetCurrentThreadId();
 
  	srand(seed);
 	sbbs_random(10);	/* Throw away first number */