diff options
| author | gingerBill <bill@gingerbill.org> | 2023-01-02 20:42:22 +0000 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2023-01-02 20:42:22 +0000 |
| commit | df2767311f11255da311a23bc240077fa8f933b1 (patch) | |
| tree | 8ae725738a79cd2e706490791c54cf894903d638 /src/checker.cpp | |
| parent | 09c26e6be006cb285aed4b0780bee368516fd272 (diff) | |
Use `mutex_try_lock` in `check_proc_info`
Diffstat (limited to 'src/checker.cpp')
| -rw-r--r-- | src/checker.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/checker.cpp b/src/checker.cpp index dc6a49bcf..f80ea9e4c 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -5050,7 +5050,10 @@ gb_internal bool check_proc_info(Checker *c, ProcInfo *pi, UntypedExprInfoMap *u return false; } - MUTEX_GUARD(&pi->decl->proc_checked_mutex); + if (!mutex_try_lock(&pi->decl->proc_checked_mutex)) { + return false; + } + defer (mutex_unlock(&pi->decl->proc_checked_mutex)); Entity *e = pi->decl->entity; switch (pi->decl->proc_checked_state.load()) { |