From c28a40388b188221abc64de7f2ba52a7f4ffd448 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Sat, 16 Dec 2017 18:05:09 +0000 Subject: Provide an internal helper for calling member functions via libfuse --- netfs/fuse/fuseAppBase.cpp | 2 +- netfs/fuse/fuseAppBase.h | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/netfs/fuse/fuseAppBase.cpp b/netfs/fuse/fuseAppBase.cpp index fc6fa14..f0d6b52 100644 --- a/netfs/fuse/fuseAppBase.cpp +++ b/netfs/fuse/fuseAppBase.cpp @@ -224,7 +224,7 @@ FuseAppBase::runint(int argc, char ** argv) fuseApp = this; struct fuse_args args = FUSE_ARGS_INIT(argc, argv); if (fuse_opt_parse(&args, fuseApp, fuse_opts, - &helper) == -1) { + &internalHelper) == -1) { exit(1); } return args; diff --git a/netfs/fuse/fuseAppBase.h b/netfs/fuse/fuseAppBase.h index 4128c6b..daa8cb1 100644 --- a/netfs/fuse/fuseAppBase.h +++ b/netfs/fuse/fuseAppBase.h @@ -170,6 +170,11 @@ class DLL_PUBLIC FuseAppBase { } } } + template + static int internalHelper(Args ... a) + { + return (fuseApp->*f)(a...); + } static FuseAppBase * fuseApp; }; -- cgit v1.2.3