summaryrefslogtreecommitdiff
path: root/nuttx/sched/sem_trywait.c
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/sched/sem_trywait.c')
-rw-r--r--nuttx/sched/sem_trywait.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/nuttx/sched/sem_trywait.c b/nuttx/sched/sem_trywait.c
index 384eff0a0..dc65f8f58 100644
--- a/nuttx/sched/sem_trywait.c
+++ b/nuttx/sched/sem_trywait.c
@@ -102,6 +102,13 @@ int sem_trywait(sem_t *sem)
irqstate_t saved_state;
int ret = ERROR;
+ if (up_interrupt_context())
+ {
+ /* We do not want to set the errno in this case */
+
+ return ERROR;
+ }
+
/* Assume any errors reported are due to invalid arguments. */
*get_errno_ptr() = EINVAL;