summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander <aleksandr.rvachev@eltex-co.ru>2018-07-09 17:21:32 +0700
committerNikolaus Rath <Nikolaus@rath.org>2018-07-09 16:50:42 +0100
commitb045ea4bb7a33ae3c6f6fc6e7371708810acd01a (patch)
tree3f9980e33d90e3be3bb5f459e2dc5fc8c6396ac1
parenta0c14264e99491406f8a346b50903dadaccaa6f8 (diff)
downloadfuse-b045ea4bb7a33ae3c6f6fc6e7371708810acd01a.tar.gz
Fix SIGSEGV when fuse_interrupted() is called outside the eventloop
-rw-r--r--lib/fuse.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/fuse.c b/lib/fuse.c
index 5f7ed5c..c3ffb6c 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -4417,7 +4417,9 @@ int fuse_getgroups(int size, gid_t list[])
int fuse_interrupted(void)
{
- return fuse_req_interrupted(fuse_get_context_internal()->req);
+ struct fuse_context_i *c = fuse_get_context_internal();
+
+ return c->req ? fuse_req_interrupted(c->req) : 0;
}
void fuse_set_getcontext_func(struct fuse_context *(*func)(void))