refactor
This commit is contained in:
@ -90,6 +90,7 @@ endforeach
|
||||
endfunction
|
||||
eventlib
|
||||
expect_streq
|
||||
fallocate_impl
|
||||
fext
|
||||
fgetattr
|
||||
flac_version
|
||||
|
@ -64,15 +64,15 @@ private:
|
||||
struct fuse_operations fuse_ops_ {};
|
||||
|
||||
private:
|
||||
[[nodiscard]] auto execute_callback(
|
||||
std::string_view function_name, const char *from, const char *to,
|
||||
const std::function<api_error(const std::string &, const std::string &)>
|
||||
&cb,
|
||||
bool disable_logging = false) -> int;
|
||||
[[nodiscard]] auto
|
||||
execute_callback(std::string_view function_name, const char *from,
|
||||
const char *to,
|
||||
const std::function<api_error(std::string, std::string)> &cb,
|
||||
bool disable_logging = false) -> int;
|
||||
|
||||
[[nodiscard]] auto
|
||||
execute_callback(std::string_view function_name, const char *path,
|
||||
const std::function<api_error(const std::string &)> &cb,
|
||||
const std::function<api_error(std::string)> &cb,
|
||||
bool disable_logging = false) -> int;
|
||||
|
||||
static void execute_void_callback(std::string_view function_name,
|
||||
@ -83,7 +83,7 @@ private:
|
||||
const std::function<void *()> &cb) -> void *;
|
||||
|
||||
void raise_fuse_event(std::string_view function_name,
|
||||
const std::string &api_path, int ret,
|
||||
std::string_view api_path, int ret,
|
||||
bool disable_logging);
|
||||
|
||||
private:
|
||||
|
@ -106,8 +106,8 @@ auto fuse_base::access_(const char *path, int mask) -> int {
|
||||
};
|
||||
|
||||
return instance().instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().access_impl(api_path, mask);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().access_impl(std::move(api_path), mask);
|
||||
});
|
||||
}
|
||||
|
||||
@ -118,8 +118,8 @@ auto fuse_base::chflags_(const char *path, uint32_t flags) -> int {
|
||||
};
|
||||
|
||||
return instance().instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().chflags_impl(api_path, flags);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().chflags_impl(std::move(api_path), flags);
|
||||
});
|
||||
}
|
||||
#endif // __APPLE__
|
||||
@ -132,8 +132,8 @@ auto fuse_base::chmod_(const char *path, mode_t mode,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().chmod_impl(api_path, mode, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().chmod_impl(std::move(api_path) mode, fi);
|
||||
});
|
||||
}
|
||||
#else
|
||||
@ -143,8 +143,8 @@ auto fuse_base::chmod_(const char *path, mode_t mode) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().chmod_impl(api_path, mode);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().chmod_impl(std::move(api_path), mode);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -157,8 +157,8 @@ auto fuse_base::chown_(const char *path, uid_t uid, gid_t gid,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().chown_impl(api_path, uid, gid, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().chown_impl(std::move(api_path), uid, gid, fi);
|
||||
});
|
||||
}
|
||||
#else
|
||||
@ -168,8 +168,8 @@ auto fuse_base::chown_(const char *path, uid_t uid, gid_t gid) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().chown_impl(api_path, uid, gid);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().chown_impl(std::move(api_path), uid, gid);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -181,8 +181,8 @@ auto fuse_base::create_(const char *path, mode_t mode,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().create_impl(api_path, mode, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().create_impl(std::move(api_path), mode, fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -237,7 +237,7 @@ auto fuse_base::execute_callback(
|
||||
|
||||
auto fuse_base::execute_callback(
|
||||
std::string_view function_name, const char *path,
|
||||
const std::function<api_error(const std::string &api_path)> &cb,
|
||||
const std::function<api_error(std::string api_path)> &cb,
|
||||
bool disable_logging) -> int {
|
||||
const auto api_path = utils::path::create_api_path(path ? path : "");
|
||||
const auto res = utils::from_api_error(cb(api_path));
|
||||
@ -269,8 +269,9 @@ auto fuse_base::fallocate_(const char *path, int mode, off_t offset,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().fallocate_impl(api_path, mode, offset, length, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().fallocate_impl(std::move(api_path), mode, offset,
|
||||
length, fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -282,8 +283,8 @@ auto fuse_base::fgetattr_(const char *path, struct stat *st,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().fgetattr_impl(api_path, st, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().fgetattr_impl(std::move(api_path), st, fi);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -296,8 +297,8 @@ auto fuse_base::fsetattr_x_(const char *path, struct setattr_x *attr,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().fsetattr_x_impl(api_path, attr, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().fsetattr_x_impl(std::move(api_path), attr, fi);
|
||||
});
|
||||
}
|
||||
#endif // __APPLE__
|
||||
@ -309,8 +310,8 @@ auto fuse_base::fsync_(const char *path, int datasync,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().fsync_impl(api_path, datasync, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().fsync_impl(std::move(api_path), datasync, fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -322,8 +323,8 @@ auto fuse_base::ftruncate_(const char *path, off_t size,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().ftruncate_impl(api_path, size, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().ftruncate_impl(std::move(api_path), size, fi);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -336,8 +337,8 @@ auto fuse_base::getattr_(const char *path, struct stat *st,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().getattr_impl(api_path, st, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().getattr_impl(std::move(api_path), st, fi);
|
||||
});
|
||||
}
|
||||
#else
|
||||
@ -347,8 +348,8 @@ auto fuse_base::getattr_(const char *path, struct stat *st) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().getattr_impl(api_path, st);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().getattr_impl(std::move(api_path), st);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -361,8 +362,8 @@ auto fuse_base::getxtimes_(const char *path, struct timespec *bkuptime,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().getxtimes_impl(api_path, bkuptime, crtime);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().getxtimes_impl(std::move(api_path), bkuptime, crtime);
|
||||
});
|
||||
}
|
||||
#endif // __APPLE__
|
||||
@ -427,8 +428,8 @@ auto fuse_base::mkdir_(const char *path, mode_t mode) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().mkdir_impl(api_path, mode);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().mkdir_impl(std::move(api_path), mode);
|
||||
});
|
||||
}
|
||||
|
||||
@ -486,8 +487,8 @@ auto fuse_base::open_(const char *path, struct fuse_file_info *fi) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().open_impl(api_path, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().open_impl(std::move(api_path), fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -497,8 +498,8 @@ auto fuse_base::opendir_(const char *path, struct fuse_file_info *fi) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().opendir_impl(api_path, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().opendir_impl(std::move(api_path), fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -511,9 +512,9 @@ auto fuse_base::read_(const char *path, char *buffer, size_t read_size,
|
||||
std::size_t bytes_read{};
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path,
|
||||
[&](const std::string &api_path) -> api_error {
|
||||
return instance().read_impl(api_path, buffer, read_size, read_offset,
|
||||
fi, bytes_read);
|
||||
[&](std::string api_path) -> api_error {
|
||||
return instance().read_impl(std::move(api_path), buffer, read_size,
|
||||
read_offset, fi, bytes_read);
|
||||
},
|
||||
true);
|
||||
return (res == 0) ? static_cast<int>(bytes_read) : res;
|
||||
@ -529,9 +530,9 @@ auto fuse_base::readdir_(const char *path, void *buf,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().readdir_impl(api_path, buf, fuse_fill_dir, offset, fi,
|
||||
flags);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().readdir_impl(std::move(api_path), buf, fuse_fill_dir,
|
||||
offset, fi, flags);
|
||||
});
|
||||
}
|
||||
#else
|
||||
@ -543,9 +544,9 @@ auto fuse_base::readdir_(const char *path, void *buf,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().readdir_impl(api_path, buf, fuse_fill_dir, offset,
|
||||
fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().readdir_impl(std::move(api_path), buf, fuse_fill_dir,
|
||||
offset, fi);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -556,8 +557,8 @@ auto fuse_base::release_(const char *path, struct fuse_file_info *fi) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().release_impl(api_path, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().release_impl(std::move(api_path), fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -568,8 +569,8 @@ auto fuse_base::releasedir_(const char *path,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().releasedir_impl(api_path, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().releasedir_impl(std::move(api_path), fi);
|
||||
});
|
||||
}
|
||||
|
||||
@ -608,8 +609,8 @@ auto fuse_base::rmdir_(const char *path) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().rmdir_impl(api_path);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().rmdir_impl(std::move(api_path));
|
||||
});
|
||||
}
|
||||
|
||||
@ -623,9 +624,9 @@ auto fuse_base::getxattr_(const char *path, const char *name, char *value,
|
||||
|
||||
int attribute_size = 0;
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().getxattr_impl(api_path, name, value, size, position,
|
||||
attribute_size);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().getxattr_impl(std::move(api_path), name, value, size,
|
||||
position, attribute_size);
|
||||
});
|
||||
|
||||
return res == 0 ? attribute_size : res;
|
||||
@ -639,8 +640,8 @@ auto fuse_base::getxattr_(const char *path, const char *name, char *value,
|
||||
|
||||
int attribute_size = 0;
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().getxattr_impl(api_path, name, value, size,
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().getxattr_impl(std::move(api_path), name, value, size,
|
||||
attribute_size);
|
||||
});
|
||||
|
||||
@ -657,9 +658,9 @@ auto fuse_base::listxattr_(const char *path, char *buffer, size_t size) -> int {
|
||||
bool return_size = false;
|
||||
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().listxattr_impl(api_path, buffer, size, required_size,
|
||||
return_size);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().listxattr_impl(std::move(api_path), buffer, size,
|
||||
required_size, return_size);
|
||||
});
|
||||
|
||||
return return_size ? required_size : res;
|
||||
@ -752,7 +753,7 @@ auto fuse_base::parse_args(std::vector<std::string> &args) -> int {
|
||||
}
|
||||
|
||||
void fuse_base::raise_fuse_event(std::string_view function_name,
|
||||
const std::string &api_path, int ret,
|
||||
std::string_view api_path, int ret,
|
||||
bool disable_logging) {
|
||||
if ((ret >= 0) && disable_logging) {
|
||||
return;
|
||||
@ -766,7 +767,7 @@ void fuse_base::raise_fuse_event(std::string_view function_name,
|
||||
(config_.get_event_level() >= event_level::trace)) {
|
||||
std::string func{function_name};
|
||||
event_system::instance().raise<fuse_event>(
|
||||
utils::string::right_trim(func, '_'), api_path, ret);
|
||||
utils::string::right_trim(func, '_'), std::string{api_path}, ret);
|
||||
}
|
||||
}
|
||||
|
||||
@ -776,8 +777,8 @@ auto fuse_base::removexattr_(const char *path, const char *name) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().removexattr_impl(api_path, name);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().removexattr_impl(std::move(api_path), name);
|
||||
});
|
||||
}
|
||||
|
||||
@ -789,9 +790,9 @@ auto fuse_base::setxattr_(const char *path, const char *name, const char *value,
|
||||
};
|
||||
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setxattr_impl(api_path, name, value, size, flags,
|
||||
position);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().setxattr_impl(std::move(api_path), name, value, size,
|
||||
flags, position);
|
||||
});
|
||||
if (res != 0) {
|
||||
errno = std::abs(res);
|
||||
@ -807,8 +808,9 @@ auto fuse_base::setxattr_(const char *path, const char *name, const char *value,
|
||||
};
|
||||
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setxattr_impl(api_path, name, value, size, flags);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().setxattr_impl(std::move(api_path), name, value, size,
|
||||
flags);
|
||||
});
|
||||
if (res != 0) {
|
||||
errno = std::abs(res);
|
||||
@ -832,8 +834,8 @@ auto fuse_base::setattr_x_(const char *path, struct setattr_x *attr) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setattr_x_impl(api_path, attr);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().setattr_x_impl(std::move(api_path), attr);
|
||||
});
|
||||
}
|
||||
|
||||
@ -844,8 +846,8 @@ auto fuse_base::setbkuptime_(const char *path,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setbkuptime_impl(api_path, bkuptime);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().setbkuptime_impl(std::move(api_path), bkuptime);
|
||||
});
|
||||
}
|
||||
|
||||
@ -856,8 +858,8 @@ auto fuse_base::setchgtime_(const char *path,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setchgtime_impl(api_path, chgtime);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().setchgtime_impl(std::move(api_path), chgtime);
|
||||
});
|
||||
}
|
||||
|
||||
@ -868,8 +870,8 @@ auto fuse_base::setcrtime_(const char *path,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setcrtime_impl(api_path, crtime);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().setcrtime_impl(std::move(api_path), crtime);
|
||||
});
|
||||
}
|
||||
|
||||
@ -879,8 +881,8 @@ auto fuse_base::setvolname_(const char *volname) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, volname, [&](const std::string &api_path) -> api_error {
|
||||
return instance().setvolname_impl(volname);
|
||||
function_name, volname, [&](std::string api_path) -> api_error {
|
||||
return instance().setvolname_impl(std::move(volname));
|
||||
});
|
||||
}
|
||||
|
||||
@ -890,8 +892,8 @@ auto fuse_base::statfs_x_(const char *path, struct statfs *stbuf) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().statfs_x_impl(api_path, stbuf);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().statfs_x_impl(std::move(api_path), stbuf);
|
||||
});
|
||||
}
|
||||
#else // __APPLE__
|
||||
@ -901,8 +903,8 @@ auto fuse_base::statfs_(const char *path, struct statvfs *stbuf) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().statfs_impl(api_path, stbuf);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().statfs_impl(std::move(api_path), stbuf);
|
||||
});
|
||||
}
|
||||
#endif // __APPLE__
|
||||
@ -915,8 +917,8 @@ auto fuse_base::truncate_(const char *path, off_t size,
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().truncate_impl(api_path, size, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().truncate_impl(std::move(api_path), size, fi);
|
||||
});
|
||||
}
|
||||
#else
|
||||
@ -926,8 +928,8 @@ auto fuse_base::truncate_(const char *path, off_t size) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().truncate_impl(api_path, size);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().truncate_impl(std::move(api_path), size);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -938,8 +940,8 @@ auto fuse_base::unlink_(const char *path) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().unlink_impl(api_path);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().unlink_impl(std::move(api_path));
|
||||
});
|
||||
}
|
||||
|
||||
@ -965,8 +967,8 @@ auto fuse_base::utimens_(const char *path, const struct timespec tv[2],
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().utimens_impl(api_path, tv, fi);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().utimens_impl(std::move(api_path), tv, fi);
|
||||
});
|
||||
}
|
||||
#else
|
||||
@ -976,8 +978,8 @@ auto fuse_base::utimens_(const char *path, const struct timespec tv[2]) -> int {
|
||||
};
|
||||
|
||||
return instance().execute_callback(
|
||||
function_name, path, [&](const std::string &api_path) -> api_error {
|
||||
return instance().utimens_impl(api_path, tv);
|
||||
function_name, path, [&](std::string api_path) -> api_error {
|
||||
return instance().utimens_impl(std::move(api_path), tv);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
@ -992,9 +994,9 @@ auto fuse_base::write_(const char *path, const char *buffer, size_t write_size,
|
||||
|
||||
const auto res = instance().execute_callback(
|
||||
function_name, path,
|
||||
[&](const std::string &api_path) -> api_error {
|
||||
return instance().write_impl(api_path, buffer, write_size, write_offset,
|
||||
fi, bytes_written);
|
||||
[&](std::string api_path) -> api_error {
|
||||
return instance().write_impl(std::move(api_path), buffer, write_size,
|
||||
write_offset, fi, bytes_written);
|
||||
},
|
||||
true);
|
||||
return (res == 0) ? static_cast<int>(bytes_written) : res;
|
||||
|
Reference in New Issue
Block a user