summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/handle.c
diff options
context:
space:
mode:
authorAndrew Gregory <andrew.gregory.8@gmail.com>2016-02-22 20:07:57 +0100
committerAllan McRae <allan@archlinux.org>2016-02-23 03:41:36 +0100
commita724235b6127f9655708614d1e44f9b5c661a506 (patch)
tree6b4ef62ae28bc340db7ca5b2d628a60e3a15363a /lib/libalpm/handle.c
parent1d6583a58da0904fb7feafd4a666391087955a7b (diff)
downloadpacman-a724235b6127f9655708614d1e44f9b5c661a506.tar.gz
pacman-a724235b6127f9655708614d1e44f9b5c661a506.tar.xz
make alpm_unlock and trans_interrupt async safe
RET_ERR calls _alpm_log which includes calls that are not safe for use in asynchronous signal handlers (see signal(7)). Replace it in functions called from our signal handlers with a new macro RET_ERR_ASYNC_SAFE which is identical except that it lacks the call to _alpm_log. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Diffstat (limited to 'lib/libalpm/handle.c')
-rw-r--r--lib/libalpm/handle.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libalpm/handle.c b/lib/libalpm/handle.c
index e4bde1a7..e9439a0b 100644
--- a/lib/libalpm/handle.c
+++ b/lib/libalpm/handle.c
@@ -141,7 +141,7 @@ int SYMEXPORT alpm_unlock(alpm_handle_t *handle)
handle->lockfd = -1;
if(unlink(handle->lockfile) != 0) {
- RET_ERR(handle, ALPM_ERR_SYSTEM, -1);
+ RET_ERR_ASYNC_SAFE(handle, ALPM_ERR_SYSTEM, -1);
} else {
return 0;
}