rem: int              err, status;
add: int              err, status = NS_ERROR;
context: Ns_CondTimedWait(Ns_Cond *cond, Ns_Mutex *mutex, Ns_Time *timePtr){    int              err, status;    struct timespec  ts;    if (timePtr == NULL) {	Ns_CondWait(cond, mutex);	return NS_OK;    }    /*     * Convert the microsecond-based Ns_Time to a nanosecond-based     * struct timespec.     */    ts.tv_sec = timePtr->sec;    ts.tv_nsec = timePtr->usec * 1000;    /*     * As documented on Linux, pthread_cond_timedwait may return     * EINTR if a signal arrives.  We have noticed that      * EINTR can be returned on Solaris as well although this     * is not documented.  We assume the wakeup is truely     * spurious and simply restart the wait knowing that the     * ts structure has not been modified.     */    do {    	err = pthread_cond_timedwait(GetCond(cond), NsGetLock(mutex), &ts);    } while (err == EINTR);    if (err == ETIMEDOUT) {	status = NS_TIMEOUT;    } else if (err != 0) {	NsThreadFatal("Ns_CondTimedWait", "pthread_cond_timedwait", err);    } else {	status = NS_OK;    }    return status;}