summaryrefslogtreecommitdiff
path: root/src/xgselect.h
diff options
context:
space:
mode:
authorPip Cet <pipcet@gmail.com>2020-08-21 14:56:06 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2020-08-21 14:56:06 +0200
commit9c62ffb08262c82b7e38e6eb5767f2087424aa47 (patch)
treeea2a18eabffded063b40af0623b2485b10ad44dc /src/xgselect.h
parent19ee08f1e8599ce0e0465f6ffbd4a76791d791b4 (diff)
downloademacs-9c62ffb08262c82b7e38e6eb5767f2087424aa47.tar.gz
Fix lock failures in xg_select
* src/xgselect.c (release_select_lock, acquire_select_lock): Introduce. (xg_select): Use `acquire_select_lock', `release_select_lock'. * src/thread.c (release_select_lock): Introduce for non-GLib builds. (really_call_select): Call `release_select_lock'. Simplify by ensuring acquisition of the lock always succeeds (bug#36609).
Diffstat (limited to 'src/xgselect.h')
-rw-r--r--src/xgselect.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/xgselect.h b/src/xgselect.h
index a38591f3296..512bf3ad85f 100644
--- a/src/xgselect.h
+++ b/src/xgselect.h
@@ -29,4 +29,6 @@ extern int xg_select (int max_fds,
fd_set *rfds, fd_set *wfds, fd_set *efds,
struct timespec *timeout, sigset_t *sigmask);
+extern void release_select_lock (void);
+
#endif /* XGSELECT_H */