Changeset 3573 for trunk/kStuff/kHlp/Bare/kHlpBareSem.c
- Timestamp:
- Aug 31, 2007, 6:09:23 AM (18 years ago)
- Location:
- trunk/kStuff/kHlp/Bare
- Files:
-
- 1 added
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/kStuff/kHlp/Bare/kHlpBareSem.c
r3570 r3573 29 29 * Header Files * 30 30 *******************************************************************************/ 31 #ifdef __OS2__ 31 #include <k/kDefs.h> 32 #include <k/kHlpSem.h> 33 34 #if K_OS == K_OS_OS2 32 35 # define INCL_BASE 33 36 # define INCL_ERRORS 34 37 # include <os2.h> 35 #elif defined(__WIN__)38 #elif K_OS == K_OS_WINDOWS 36 39 # include <Windows.h> 37 40 #else … … 39 42 #endif 40 43 41 #include <k/kLdr.h>42 #include "kLdrHlp.h"43 44 44 45 … … 46 47 * Global Variables * 47 48 *******************************************************************************/ 48 #if def __OS2__49 #if K_OS == K_OS_OS2 49 50 /** The loader sempahore. */ 50 51 static HMTX g_hmtx; 51 52 52 #elif defined(__WIN__)53 #elif K_OS == K_OS_WINDOWS 53 54 /** The loader sempahore. */ 54 55 static CRITICAL_SECTION g_CritSect; … … 63 64 * @returns 0 on success, non-zero OS status code on failure. 64 65 */ 65 int k ldrHlpSemInit(void)66 int kHlpSemInit(void) 66 67 { 67 #if def __OS2__68 #if K_OS == K_OS_OS2 68 69 APIRET rc; 69 70 g_hmtx = NULLHANDLE; … … 72 73 return rc; 73 74 74 #elif defined(__WIN__)75 #elif K_OS == K_OS_WINDOWS 75 76 InitializeCriticalSection(&g_CritSect); 76 77 … … 85 86 * Terminates the loader semaphore. 86 87 */ 87 void k ldrHlpSemTerm(void)88 void kHlpSemTerm(void) 88 89 { 89 #if def __OS2__90 #if K_OS == K_OS_OS2 90 91 HMTX hmtx = g_hmtx; 91 92 g_hmtx = NULLHANDLE; 92 93 DosCloseMutexSem(hmtx); 93 94 94 #elif defined(__WIN__)95 #elif K_OS == K_OS_WINDOWS 95 96 DeleteCriticalSection(&g_CritSect); 96 97 … … 107 108 * @returns 0 on success, non-zero OS status code on failure. 108 109 */ 109 int k ldrHlpSemRequest(void)110 int kHlpSemRequest(void) 110 111 { 111 #if def __OS2__112 #if K_OS == K_OS_OS2 112 113 APIRET rc = DosRequestMutexSem(g_hmtx, 5000); 113 114 if (rc == ERROR_TIMEOUT || rc == ERROR_SEM_TIMEOUT || rc == ERROR_INTERRUPT) … … 125 126 return rc; 126 127 127 #elif defined(__WIN__)128 #elif K_OS == K_OS_WINDOWS 128 129 EnterCriticalSection(&g_CritSect); 129 130 return 0; … … 139 140 * The caller is responsible for making sure it's the semaphore owner! 140 141 */ 141 void k ldrHlpSemRelease(void)142 void kHlpSemRelease(void) 142 143 { 143 #if def __OS2__144 #if K_OS == K_OS_OS2 144 145 APIRET rc = DosReleaseMutexSem(g_hmtx); 145 k ldrHlpAssert(!rc); (void)rc;146 kHlpAssert(!rc); (void)rc; 146 147 147 #elif defined(__WIN__)148 #elif K_OS == K_OS_WINDOWS 148 149 LeaveCriticalSection(&g_CritSect); 149 150
Note:
See TracChangeset
for help on using the changeset viewer.