diff --git a/indra/media_plugins/winmmshim/winmm_shim.cpp b/indra/media_plugins/winmmshim/winmm_shim.cpp
index 6ba95e565efa3aecca40969c14c6e6b3384d70e5..47a1e5c0187acf98e37cad50e763433170f8c27a 100644
--- a/indra/media_plugins/winmmshim/winmm_shim.cpp
+++ b/indra/media_plugins/winmmshim/winmm_shim.cpp
@@ -39,7 +39,7 @@ BOOL APIENTRY DllMain( HMODULE hModule,
                        LPVOID lpReserved
 					 )
 {
-	InitializeCriticalSectionAndSpinCount(&sCriticalSection, 0x00000400);
+	InitializeCriticalSection(&sCriticalSection);
 	return TRUE;
 }
 
@@ -62,11 +62,12 @@ void ll_winmm_shim_initialize(){
 			initialized = true;
 			init_function_pointers(winmm_handle);
 			::OutputDebugStringA("WINMM_SHIM.DLL: real winmm.dll initialized successfully\n");
-			return;
 		}
-
-		// failed to initialize real winmm.dll
-		::OutputDebugStringA("WINMM_SHIM.DLL: Failed to initialize real winmm.dll\n");
+		else
+		{
+			// failed to initialize real winmm.dll
+			::OutputDebugStringA("WINMM_SHIM.DLL: Failed to initialize real winmm.dll\n");
+		}
 	}
 	LeaveCriticalSection(&sCriticalSection);
 }