==== FSH_SEMCLEAR ==== **Purpose** This function allows an FSD to release a semaphore that was previously obtained on a call to //FSH_SEMREQUEST//. **Calling Sequence** int far pascal FSH_SEMCLEAR(pSem) void far * pSem; **Where** //pSem// is the handle to the system semaphore or the long address of the ram semaphore. **Returns** If no error is detected, a zero error code is returned. If an error is detected, one of the following error codes is returned: * ERROR_EXCL_ALREADY_OWNED -- the exclusive semaphore is already owned. * ERROR_PROTECTION_VIOLATION -- the semaphore is inaccessible. **Remarks** //FSH_SEMCLEAR// may block. **Note**: OS/2 does not validate input parameters. An FSD, therefore, should call //FSH_PROBEBUF// where appropriate.