fix
This commit is contained in:
@ -861,23 +861,22 @@ auto remote_server::fuse_utimens(const char *path, const remote::file_time *tv,
|
|||||||
if (os_handle != INVALID_HANDLE_VALUE) {
|
if (os_handle != INVALID_HANDLE_VALUE) {
|
||||||
FILETIME access_time{};
|
FILETIME access_time{};
|
||||||
FILETIME write_time{};
|
FILETIME write_time{};
|
||||||
FILETIME *access_time_ptr = nullptr;
|
FILETIME *access_time_ptr{nullptr};
|
||||||
FILETIME *write_time_ptr = nullptr;
|
FILETIME *write_time_ptr{nullptr};
|
||||||
|
|
||||||
const auto proccess_timespec = [](auto op, const auto &src, auto &dst,
|
const auto proccess_timespec = [](auto op, const auto &src, auto &dst,
|
||||||
auto *&dst_ptr) {
|
auto *&dst_ptr) {
|
||||||
if ((src == 0U) || (op == UTIME_NOW)) {
|
if ((src == 0U) || (op == UTIME_NOW)) {
|
||||||
auto now =
|
auto now = utils::unix_error_to_windows(utils::time::get_time_now());
|
||||||
utils::time::unix_error_to_windows(utils::time::get_time_now());
|
dst.dwHighDateTime = static_cast<DWORD>((now >> 32U) & 0xFFFFFFFF);
|
||||||
dest.dwHighDateTime = static_cast<DWORD>((now >> 32U) & 0xFFFFFFFF);
|
dst.dwLowDateTime = now & 0xFFFFFFFF;
|
||||||
dest.dwLowDateTime = now & 0xFFFFFFFF;
|
dst_ptr = &dst;
|
||||||
dst_ptr = &dest;
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (op != UTIME_OMIT) {
|
if (op != UTIME_OMIT) {
|
||||||
dest = utils::time::unix_time_to_filetime(src);
|
dst = utils::time::unix_time_to_filetime(src);
|
||||||
dst_ptr = &dest;
|
dst_ptr = &dst;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
proccess_timespec(op0, tv[0U], access_time, access_time_ptr);
|
proccess_timespec(op0, tv[0U], access_time, access_time_ptr);
|
||||||
|
Reference in New Issue
Block a user