mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
Updated virtdisk-GetStorageDependencyInformation patchset
This commit is contained in:
parent
cf3c3e93e5
commit
5ffb34bc71
@ -7135,14 +7135,17 @@ fi
|
||||
# | * [#42577] Add stub for virtdisk.GetStorageDependencyInformation
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/virtdisk/virtdisk.spec, dlls/virtdisk/virtdisk_main.c, include/Makefile.in, include/virtdisk.h
|
||||
# | * configure, configure.ac, dlls/virtdisk/tests/Makefile.in, dlls/virtdisk/tests/virtdisk.c, dlls/virtdisk/virtdisk.spec,
|
||||
# | dlls/virtdisk/virtdisk_main.c, include/Makefile.in, include/virtdisk.h
|
||||
# |
|
||||
if test "$enable_virtdisk_GetStorageDependencyInformation" -eq 1; then
|
||||
patch_apply virtdisk-GetStorageDependencyInformation/0001-include-add-headerfile-virtdisk.h.patch
|
||||
patch_apply virtdisk-GetStorageDependencyInformation/0002-virtdisk-Add-GetStorageDependencyInformation-stub.patch
|
||||
patch_apply virtdisk-GetStorageDependencyInformation/0003-virtdisk-tests-Add-GetStorageDependencyInformation-t.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Louis Lenders", "include: Add headerfile virtdisk.h.", 1 },';
|
||||
printf '%s\n' '+ { "Michael Müller", "virtdisk: Add GetStorageDependencyInformation stub.", 1 },';
|
||||
printf '%s\n' '+ { "Gijs Vermeulen", "virtdisk/tests: Add GetStorageDependencyInformation tests.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
|
@ -1,20 +1,20 @@
|
||||
From f3b400f8c005d94b220b1e5d9d9da165520cd97f Mon Sep 17 00:00:00 2001
|
||||
From c981822f9574d88b865917fe96fa46dd247a2b0b Mon Sep 17 00:00:00 2001
|
||||
From: Louis Lenders <xerox.xerox2000x@gmail.com>
|
||||
Date: Fri, 3 Mar 2017 10:00:14 +0100
|
||||
Subject: [PATCH] include: add headerfile virtdisk.h
|
||||
Subject: [PATCH 1/3] include: add headerfile virtdisk.h
|
||||
|
||||
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
|
||||
---
|
||||
include/Makefile.in | 1 +
|
||||
include/virtdisk.h | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 96 insertions(+)
|
||||
include/virtdisk.h | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 93 insertions(+)
|
||||
create mode 100644 include/virtdisk.h
|
||||
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index b2f30ad..ca3dd83 100644
|
||||
index 78ab095..900e326 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -639,6 +639,7 @@ SOURCES = \
|
||||
@@ -631,6 +631,7 @@ SOURCES = \
|
||||
verrsrc.h \
|
||||
vfw.h \
|
||||
vfwmsgs.h \
|
||||
@ -24,10 +24,10 @@ index b2f30ad..ca3dd83 100644
|
||||
vss.idl \
|
||||
diff --git a/include/virtdisk.h b/include/virtdisk.h
|
||||
new file mode 100644
|
||||
index 0000000..3ed2c6f
|
||||
index 0000000..7924689
|
||||
--- /dev/null
|
||||
+++ b/include/virtdisk.h
|
||||
@@ -0,0 +1,95 @@
|
||||
@@ -0,0 +1,92 @@
|
||||
+/*
|
||||
+ * Copyright 2017 Louis Lenders
|
||||
+ *
|
||||
@ -49,10 +49,7 @@ index 0000000..3ed2c6f
|
||||
+#ifndef __WINE_VIRTDISK_DLL_H
|
||||
+#define __WINE_VIRTDISK_DLL_H
|
||||
+
|
||||
+#include "windef.h"
|
||||
+#include "wine/debug.h"
|
||||
+#include "winbase.h"
|
||||
+#include "winnt.h"
|
||||
+#include <windows.h>
|
||||
+
|
||||
+typedef enum _GET_STORAGE_DEPENDENCY_FLAG
|
||||
+{
|
||||
@ -115,8 +112,8 @@ index 0000000..3ed2c6f
|
||||
+ ULONG NumberEntries;
|
||||
+ __C89_NAMELESS union
|
||||
+ {
|
||||
+ STORAGE_DEPENDENCY_INFO_TYPE_1 Version1Entries[1];
|
||||
+ STORAGE_DEPENDENCY_INFO_TYPE_2 Version2Entries[1];
|
||||
+ STORAGE_DEPENDENCY_INFO_TYPE_1 *Version1Entries;
|
||||
+ STORAGE_DEPENDENCY_INFO_TYPE_2 *Version2Entries;
|
||||
+ } __C89_NAMELESSUNIONNAME;
|
||||
+} STORAGE_DEPENDENCY_INFO, *PSTORAGE_DEPENDENCY_INFO;
|
||||
+
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 53c44bc9df1067be152aa39bf3824ae2f586d23b Mon Sep 17 00:00:00 2001
|
||||
From d2a6ef055db332efbb7ebb36bda65b2611eb861b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Fri, 3 Mar 2017 14:23:53 +0100
|
||||
Subject: virtdisk: Add GetStorageDependencyInformation stub.
|
||||
Subject: [PATCH 2/3] virtdisk: Add GetStorageDependencyInformation stub.
|
||||
|
||||
---
|
||||
dlls/virtdisk/virtdisk.spec | 2 +-
|
||||
@ -9,7 +9,7 @@ Subject: virtdisk: Add GetStorageDependencyInformation stub.
|
||||
2 files changed, 20 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/virtdisk/virtdisk.spec b/dlls/virtdisk/virtdisk.spec
|
||||
index 2946b66d501..6bd5f146dbd 100644
|
||||
index 2946b66..6bd5f14 100644
|
||||
--- a/dlls/virtdisk/virtdisk.spec
|
||||
+++ b/dlls/virtdisk/virtdisk.spec
|
||||
@@ -8,7 +8,7 @@
|
||||
@ -22,7 +22,7 @@ index 2946b66d501..6bd5f146dbd 100644
|
||||
@ stub GetVirtualDiskMetadata
|
||||
@ stub GetVirtualDiskOperationProgress
|
||||
diff --git a/dlls/virtdisk/virtdisk_main.c b/dlls/virtdisk/virtdisk_main.c
|
||||
index 0da0dca4611..aac356e7a4f 100644
|
||||
index 0da0dca..0f13404 100644
|
||||
--- a/dlls/virtdisk/virtdisk_main.c
|
||||
+++ b/dlls/virtdisk/virtdisk_main.c
|
||||
@@ -22,6 +22,8 @@
|
||||
@ -46,7 +46,7 @@ index 0da0dca4611..aac356e7a4f 100644
|
||||
+ if (used) *used = sizeof(STORAGE_DEPENDENCY_INFO);
|
||||
+
|
||||
+ if (!info || !size)
|
||||
+ return ERROR_SUCCESS;
|
||||
+ return ERROR_INVALID_PARAMETER;
|
||||
+
|
||||
+ if (size < sizeof(STORAGE_DEPENDENCY_INFO))
|
||||
+ return ERROR_INSUFFICIENT_BUFFER;
|
||||
@ -56,5 +56,5 @@ index 0da0dca4611..aac356e7a4f 100644
|
||||
+ return ERROR_SUCCESS;
|
||||
+}
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@ -0,0 +1,121 @@
|
||||
From 6c514957d141fe9761d6281cdddbeaabf5234fe7 Mon Sep 17 00:00:00 2001
|
||||
From: Gijs Vermeulen <gijsvrm@gmail.com>
|
||||
Date: Mon, 28 May 2018 21:55:22 +0200
|
||||
Subject: [PATCH 3/3] virtdisk/tests: Add GetStorageDependencyInformation
|
||||
tests.
|
||||
|
||||
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
|
||||
---
|
||||
configure | 1 +
|
||||
configure.ac | 1 +
|
||||
dlls/virtdisk/tests/Makefile.in | 4 +++
|
||||
dlls/virtdisk/tests/virtdisk.c | 62 +++++++++++++++++++++++++++++++++++++++++
|
||||
4 files changed, 68 insertions(+)
|
||||
create mode 100644 dlls/virtdisk/tests/Makefile.in
|
||||
create mode 100644 dlls/virtdisk/tests/virtdisk.c
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 456304b..4fd19dd 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19215,6 +19215,7 @@ wine_fn_config_makefile dlls/ver.dll16 enable_win16
|
||||
wine_fn_config_makefile dlls/version enable_version
|
||||
wine_fn_config_makefile dlls/version/tests enable_tests
|
||||
wine_fn_config_makefile dlls/virtdisk enable_virtdisk
|
||||
+wine_fn_config_makefile dlls/virtdisk/tests enable_tests
|
||||
wine_fn_config_makefile dlls/vmm.vxd enable_win16
|
||||
wine_fn_config_makefile dlls/vnbt.vxd enable_win16
|
||||
wine_fn_config_makefile dlls/vnetbios.vxd enable_win16
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 600cb63..f61c3b2 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3715,6 +3715,7 @@ WINE_CONFIG_MAKEFILE(dlls/ver.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/version)
|
||||
WINE_CONFIG_MAKEFILE(dlls/version/tests)
|
||||
WINE_CONFIG_MAKEFILE(dlls/virtdisk)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/virtdisk/tests)
|
||||
WINE_CONFIG_MAKEFILE(dlls/vmm.vxd,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/vnbt.vxd,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/vnetbios.vxd,enable_win16)
|
||||
diff --git a/dlls/virtdisk/tests/Makefile.in b/dlls/virtdisk/tests/Makefile.in
|
||||
new file mode 100644
|
||||
index 0000000..d0557cb
|
||||
--- /dev/null
|
||||
+++ b/dlls/virtdisk/tests/Makefile.in
|
||||
@@ -0,0 +1,4 @@
|
||||
+TESTDLL = virtdisk.dll
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ virtdisk.c
|
||||
diff --git a/dlls/virtdisk/tests/virtdisk.c b/dlls/virtdisk/tests/virtdisk.c
|
||||
new file mode 100644
|
||||
index 0000000..2719d51
|
||||
--- /dev/null
|
||||
+++ b/dlls/virtdisk/tests/virtdisk.c
|
||||
@@ -0,0 +1,62 @@
|
||||
+/*
|
||||
+ * Copyright 2018 Gijs Vermeulen
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2.1 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
+ */
|
||||
+
|
||||
+#include "virtdisk.h"
|
||||
+#include "wine/heap.h"
|
||||
+#include "wine/test.h"
|
||||
+
|
||||
+static DWORD (WINAPI *pGetStorageDependencyInformation)(HANDLE,GET_STORAGE_DEPENDENCY_FLAG,ULONG,STORAGE_DEPENDENCY_INFO*,ULONG*);
|
||||
+
|
||||
+static void test_GetStorageDependencyInformation(void)
|
||||
+{
|
||||
+ DWORD ret;
|
||||
+ HANDLE handle;
|
||||
+ STORAGE_DEPENDENCY_INFO *info;
|
||||
+ ULONG size;
|
||||
+
|
||||
+ handle = CreateFileA("C:", 0, 0, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0);
|
||||
+ ok(handle != INVALID_HANDLE_VALUE, "Expected a handle\n");
|
||||
+
|
||||
+ size = sizeof(STORAGE_DEPENDENCY_INFO);
|
||||
+ info = heap_alloc(size);
|
||||
+
|
||||
+ ret = pGetStorageDependencyInformation(handle, GET_STORAGE_DEPENDENCY_FLAG_DISK_HANDLE, 0, info, 0);
|
||||
+ ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
|
||||
+
|
||||
+ ret = pGetStorageDependencyInformation(handle, GET_STORAGE_DEPENDENCY_FLAG_DISK_HANDLE, size, NULL, 0);
|
||||
+ ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
|
||||
+
|
||||
+ heap_free(info);
|
||||
+ CloseHandle(handle);
|
||||
+}
|
||||
+
|
||||
+START_TEST(virtdisk)
|
||||
+{
|
||||
+ HMODULE module = LoadLibraryA("virtdisk.dll");
|
||||
+ if(!module)
|
||||
+ {
|
||||
+ win_skip("virtdisk.dll not installed\n");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ pGetStorageDependencyInformation = (void *)GetProcAddress( module, "GetStorageDependencyInformation" );
|
||||
+ if (pGetStorageDependencyInformation)
|
||||
+ test_GetStorageDependencyInformation();
|
||||
+ else
|
||||
+ win_skip("GetStorageDependencyInformation is not available\n");
|
||||
+}
|
||||
--
|
||||
1.9.1
|
||||
|
Loading…
x
Reference in New Issue
Block a user