From: Pierre Schweitzer Date: Tue, 12 Nov 2019 22:12:48 +0000 (+0100) Subject: [SHELLBTRFS] Addendum to 1725ddf X-Git-Tag: 0.4.14-RC~1253 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=a3c13c624f4a115f99560990f065dd94e4526304;ds=inline [SHELLBTRFS] Addendum to 1725ddf --- diff --git a/dll/shellext/shellbtrfs/mountmgr_local.cpp b/dll/shellext/shellbtrfs/mountmgr_local.cpp index ee7901e1f2a..061962369ff 100644 --- a/dll/shellext/shellbtrfs/mountmgr_local.cpp +++ b/dll/shellext/shellbtrfs/mountmgr_local.cpp @@ -48,7 +48,11 @@ void mountmgr::create_point(const wstring_view& symlink, const wstring_view& dev memcpy((uint8_t*)mcpi + mcpi->DeviceNameOffset, device.data(), device.length() * sizeof(WCHAR)); Status = NtDeviceIoControlFile(h, nullptr, nullptr, nullptr, &iosb, IOCTL_MOUNTMGR_CREATE_POINT, +#ifndef __REACTOS__ buf.data(), (ULONG)buf.size(), nullptr, 0); +#else + &buf[0], (ULONG)buf.size(), nullptr, 0); +#endif if (!NT_SUCCESS(Status)) throw ntstatus_error(Status); @@ -103,13 +107,21 @@ void mountmgr::delete_points(const wstring_view& symlink, const wstring_view& un #endif Status = NtDeviceIoControlFile(h, nullptr, nullptr, nullptr, &iosb, IOCTL_MOUNTMGR_DELETE_POINTS, +#ifndef __REACTOS__ buf.data(), (ULONG)buf.size(), buf2.data(), (ULONG)buf2.size()); +#else + &buf[0], (ULONG)buf.size(), &buf2[0], (ULONG)buf2.size()); +#endif if (Status == STATUS_BUFFER_OVERFLOW) { buf2.resize(mmps->Size); Status = NtDeviceIoControlFile(h, nullptr, nullptr, nullptr, &iosb, IOCTL_MOUNTMGR_DELETE_POINTS, +#ifndef __REACTOS__ buf.data(), (ULONG)buf.size(), buf2.data(), (ULONG)buf2.size()); +#else + &buf[0], (ULONG)buf.size(), &buf2[0], (ULONG)buf2.size()); +#endif } if (!NT_SUCCESS(Status)) @@ -166,7 +178,11 @@ vector mountmgr::query_points(const wstring_view& symlink, const #endif Status = NtDeviceIoControlFile(h, nullptr, nullptr, nullptr, &iosb, IOCTL_MOUNTMGR_QUERY_POINTS, +#ifndef __REACTOS__ buf.data(), (ULONG)buf.size(), buf2.data(), (ULONG)buf2.size()); +#else + &buf[0], (ULONG)buf.size(), &buf2[0], (ULONG)buf2.size()); +#endif if (!NT_SUCCESS(Status) && Status != STATUS_BUFFER_OVERFLOW) throw ntstatus_error(Status); @@ -179,7 +195,11 @@ vector mountmgr::query_points(const wstring_view& symlink, const #endif Status = NtDeviceIoControlFile(h, nullptr, nullptr, nullptr, &iosb, IOCTL_MOUNTMGR_QUERY_POINTS, +#ifndef __REACTOS__ buf.data(), (ULONG)buf.size(), buf2.data(), (ULONG)buf2.size()); +#else + &buf[0], (ULONG)buf.size(), &buf2[0], (ULONG)buf2.size()); +#endif if (!NT_SUCCESS(Status)) throw ntstatus_error(Status);