File tree Expand file tree Collapse file tree 2 files changed +5
-2
lines changed Expand file tree Collapse file tree 2 files changed +5
-2
lines changed Original file line number Diff line number Diff line change @@ -131,7 +131,9 @@ static void equeue_sema_timeout(equeue_sema_t *s) {
131
131
bool equeue_sema_wait (equeue_sema_t *s, int ms) {
132
132
int signal = 0 ;
133
133
Timeout timeout;
134
- if (ms > 0 ) {
134
+ if (ms == 0 ) {
135
+ return false ;
136
+ } else if (ms > 0 ) {
135
137
timeout.attach_us (callback (equeue_sema_timeout, s), ms*1000 );
136
138
}
137
139
Original file line number Diff line number Diff line change @@ -129,7 +129,8 @@ typedef volatile int equeue_sema_t;
129
129
// The equeue_sema_wait waits for a semaphore to be signalled or returns
130
130
// immediately if equeue_sema_signal had been called since the last
131
131
// equeue_sema_wait. The equeue_sema_wait returns true if it detected that
132
- // equeue_sema_signal had been called.
132
+ // equeue_sema_signal had been called. If ms is negative, equeue_sema_wait
133
+ // will wait for a signal indefinitely.
133
134
int equeue_sema_create (equeue_sema_t * sema );
134
135
void equeue_sema_destroy (equeue_sema_t * sema );
135
136
void equeue_sema_signal (equeue_sema_t * sema );
You can’t perform that action at this time.
0 commit comments