mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-11-21 16:46:54 -08:00
Added patch to implement various missing columns in Win32_VideoController wbemprox class.
This commit is contained in:
parent
2a755a9b6f
commit
33efbf2440
@ -375,6 +375,7 @@ patch_enable_all ()
|
||||
enable_vulkan_Vulkan_Implementation="$1"
|
||||
enable_wbemdisp_ISWbemSecurity="$1"
|
||||
enable_wbemprox_Printer="$1"
|
||||
enable_wbemprox_Win32_VideoController="$1"
|
||||
enable_wevtapi_EvtNext="$1"
|
||||
enable_widl_SLTG_Typelib_Support="$1"
|
||||
enable_windowscodecs_32bppGrayFloat="$1"
|
||||
@ -1337,6 +1338,9 @@ patch_enable ()
|
||||
wbemprox-Printer)
|
||||
enable_wbemprox_Printer="$2"
|
||||
;;
|
||||
wbemprox-Win32_VideoController)
|
||||
enable_wbemprox_Win32_VideoController="$2"
|
||||
;;
|
||||
wevtapi-EvtNext)
|
||||
enable_wevtapi_EvtNext="$2"
|
||||
;;
|
||||
@ -7755,6 +7759,24 @@ if test "$enable_wbemprox_Printer" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wbemprox-Win32_VideoController
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/wbemprox/builtin.c
|
||||
# |
|
||||
if test "$enable_wbemprox_Win32_VideoController" -eq 1; then
|
||||
patch_apply wbemprox-Win32_VideoController/0001-wbemprox-Add-ConfigManagerErrorCode-for-Win32_VideoC.patch
|
||||
patch_apply wbemprox-Win32_VideoController/0002-wbemprox-Add-Status-for-Win32_VideoController.patch
|
||||
patch_apply wbemprox-Win32_VideoController/0003-wbemprox-Add-InstalledDisplayDrivers-for-Win32_Video.patch
|
||||
patch_apply wbemprox-Win32_VideoController/0004-wbemprox-Add-DriverDate-for-Win32_VideoController.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Michael Müller", "wbemprox: Add ConfigManagerErrorCode for Win32_VideoController.", 1 },';
|
||||
printf '%s\n' '+ { "Michael Müller", "wbemprox: Add Status for Win32_VideoController.", 1 },';
|
||||
printf '%s\n' '+ { "Michael Müller", "wbemprox: Add InstalledDisplayDrivers for Win32_VideoController.", 1 },';
|
||||
printf '%s\n' '+ { "Michael Müller", "wbemprox: Add DriverDate for Win32_VideoController.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wevtapi-EvtNext
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
|
@ -0,0 +1,85 @@
|
||||
From 8941fc985e103893adbec29ad592f9f8b9dbae44 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 15 Feb 2017 05:41:23 +0100
|
||||
Subject: wbemprox: Add ConfigManagerErrorCode for Win32_VideoController.
|
||||
|
||||
---
|
||||
dlls/wbemprox/builtin.c | 41 +++++++++++++++++++++++------------------
|
||||
1 file changed, 23 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c
|
||||
index 4dd7dcd5598..a8f8851086a 100644
|
||||
--- a/dlls/wbemprox/builtin.c
|
||||
+++ b/dlls/wbemprox/builtin.c
|
||||
@@ -163,6 +163,8 @@ static const WCHAR prop_codesetW[] =
|
||||
{'C','o','d','e','S','e','t',0};
|
||||
static const WCHAR prop_commandlineW[] =
|
||||
{'C','o','m','m','a','n','d','L','i','n','e',0};
|
||||
+static const WCHAR prop_configmanagererrorcodeW[] =
|
||||
+ {'C','o','n','f','i','g','M','a','n','a','g','e','r','E','r','r','o','r','C','o','d','e',0};
|
||||
static const WCHAR prop_countrycodeW[] =
|
||||
{'C','o','u','n','t','r','y','C','o','d','e',0};
|
||||
static const WCHAR prop_cpustatusW[] =
|
||||
@@ -684,24 +686,25 @@ static const struct column col_systemsecurity[] =
|
||||
};
|
||||
static const struct column col_videocontroller[] =
|
||||
{
|
||||
- { prop_adapterdactypeW, CIM_STRING },
|
||||
- { prop_adapterramW, CIM_UINT32, VT_I4 },
|
||||
- { prop_availabilityW, CIM_UINT16 },
|
||||
- { prop_captionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
- { prop_currentbitsperpixelW, CIM_UINT32, VT_I4 },
|
||||
- { prop_currenthorizontalresW, CIM_UINT32, VT_I4 },
|
||||
- { prop_currentrefreshrateW, CIM_UINT32, VT_I4 },
|
||||
- { prop_currentscanmodeW, CIM_UINT16, VT_I4 },
|
||||
- { prop_currentverticalresW, CIM_UINT32, VT_I4 },
|
||||
- { prop_descriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
- { prop_deviceidW, CIM_STRING|COL_FLAG_KEY },
|
||||
- { prop_driverversionW, CIM_STRING },
|
||||
- { prop_nameW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
- { prop_pnpdeviceidW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
- { prop_videoarchitectureW, CIM_UINT16, VT_I4 },
|
||||
- { prop_videomemorytypeW, CIM_UINT16, VT_I4 },
|
||||
- { prop_videomodedescriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
- { prop_videoprocessorW, CIM_STRING|COL_FLAG_DYNAMIC }
|
||||
+ { prop_adapterdactypeW, CIM_STRING },
|
||||
+ { prop_adapterramW, CIM_UINT32, VT_I4 },
|
||||
+ { prop_availabilityW, CIM_UINT16 },
|
||||
+ { prop_captionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
+ { prop_configmanagererrorcodeW, CIM_UINT32, VT_I4 },
|
||||
+ { prop_currentbitsperpixelW, CIM_UINT32, VT_I4 },
|
||||
+ { prop_currenthorizontalresW, CIM_UINT32, VT_I4 },
|
||||
+ { prop_currentrefreshrateW, CIM_UINT32, VT_I4 },
|
||||
+ { prop_currentscanmodeW, CIM_UINT16, VT_I4 },
|
||||
+ { prop_currentverticalresW, CIM_UINT32, VT_I4 },
|
||||
+ { prop_descriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
+ { prop_deviceidW, CIM_STRING|COL_FLAG_KEY },
|
||||
+ { prop_driverversionW, CIM_STRING },
|
||||
+ { prop_nameW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
+ { prop_pnpdeviceidW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
+ { prop_videoarchitectureW, CIM_UINT16, VT_I4 },
|
||||
+ { prop_videomemorytypeW, CIM_UINT16, VT_I4 },
|
||||
+ { prop_videomodedescriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
+ { prop_videoprocessorW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
};
|
||||
|
||||
static const WCHAR baseboard_manufacturerW[] =
|
||||
@@ -1081,6 +1084,7 @@ struct record_videocontroller
|
||||
UINT32 adapter_ram;
|
||||
UINT16 availability;
|
||||
const WCHAR *caption;
|
||||
+ UINT32 config_errorcode;
|
||||
UINT32 current_bitsperpixel;
|
||||
UINT32 current_horizontalres;
|
||||
UINT32 current_refreshrate;
|
||||
@@ -3222,6 +3226,7 @@ done:
|
||||
rec->adapter_dactype = videocontroller_dactypeW;
|
||||
rec->adapter_ram = vidmem;
|
||||
rec->availability = 3; /* Running or Full Power */
|
||||
+ rec->config_errorcode = 0; /* no error */
|
||||
rec->caption = heap_strdupW( name );
|
||||
rec->current_bitsperpixel = get_bits_per_pixel( &hres, &vres );
|
||||
rec->current_horizontalres = hres;
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,58 @@
|
||||
From de0496c36ab695d0900b2056b7d6896d0ab73060 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 15 Feb 2017 05:47:40 +0100
|
||||
Subject: wbemprox: Add Status for Win32_VideoController.
|
||||
|
||||
---
|
||||
dlls/wbemprox/builtin.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c
|
||||
index a8f8851086a..eb0c1495c79 100644
|
||||
--- a/dlls/wbemprox/builtin.c
|
||||
+++ b/dlls/wbemprox/builtin.c
|
||||
@@ -353,6 +353,8 @@ static const WCHAR prop_startingoffsetW[] =
|
||||
{'S','t','a','r','t','i','n','g','O','f','f','s','e','t',0};
|
||||
static const WCHAR prop_stateW[] =
|
||||
{'S','t','a','t','e',0};
|
||||
+static const WCHAR prop_statusW[] =
|
||||
+ {'S','t','a','t','u','s',0};
|
||||
static const WCHAR prop_statusinfoW[] =
|
||||
{'S','t','a','t','u','s','I','n','f','o',0};
|
||||
static const WCHAR prop_strvalueW[] =
|
||||
@@ -701,6 +703,7 @@ static const struct column col_videocontroller[] =
|
||||
{ prop_driverversionW, CIM_STRING },
|
||||
{ prop_nameW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
{ prop_pnpdeviceidW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
+ { prop_statusW, CIM_STRING },
|
||||
{ prop_videoarchitectureW, CIM_UINT16, VT_I4 },
|
||||
{ prop_videomemorytypeW, CIM_UINT16, VT_I4 },
|
||||
{ prop_videomodedescriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
@@ -793,6 +796,8 @@ static const WCHAR videocontroller_deviceidW[] =
|
||||
{'V','i','d','e','o','C','o','n','t','r','o','l','l','e','r','1',0};
|
||||
static const WCHAR videocontroller_driverversionW[] =
|
||||
{'1','.','0',0};
|
||||
+static const WCHAR videocontroller_statusW[] =
|
||||
+ {'O','K',0};
|
||||
|
||||
#include "pshpack1.h"
|
||||
struct record_baseboard
|
||||
@@ -1095,6 +1100,7 @@ struct record_videocontroller
|
||||
const WCHAR *driverversion;
|
||||
const WCHAR *name;
|
||||
const WCHAR *pnpdevice_id;
|
||||
+ const WCHAR *status;
|
||||
UINT16 videoarchitecture;
|
||||
UINT16 videomemorytype;
|
||||
const WCHAR *videomodedescription;
|
||||
@@ -3238,6 +3244,7 @@ done:
|
||||
rec->driverversion = videocontroller_driverversionW;
|
||||
rec->name = heap_strdupW( name );
|
||||
rec->pnpdevice_id = get_pnpdeviceid( &desc );
|
||||
+ rec->status = videocontroller_statusW;
|
||||
rec->videoarchitecture = 2; /* Unknown */
|
||||
rec->videomemorytype = 2; /* Unknown */
|
||||
wsprintfW( mode, fmtW, hres, vres, (UINT64)1 << rec->current_bitsperpixel );
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,79 @@
|
||||
From 649bd4d7d1d114846041edfa13941864a6c2b02c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 15 Feb 2017 06:17:57 +0100
|
||||
Subject: wbemprox: Add InstalledDisplayDrivers for Win32_VideoController.
|
||||
|
||||
---
|
||||
dlls/wbemprox/builtin.c | 28 ++++++++++++++++++++++++++++
|
||||
1 file changed, 28 insertions(+)
|
||||
|
||||
diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c
|
||||
index eb0c1495c79..4da7613f24b 100644
|
||||
--- a/dlls/wbemprox/builtin.c
|
||||
+++ b/dlls/wbemprox/builtin.c
|
||||
@@ -241,6 +241,8 @@ static const WCHAR prop_indexW[] =
|
||||
{'I','n','d','e','x',0};
|
||||
static const WCHAR prop_installdateW[] =
|
||||
{'I','n','s','t','a','l','l','D','a','t','e',0};
|
||||
+static const WCHAR prop_installeddisplaydriversW[]=
|
||||
+ {'I','n','s','t','a','l','l','e','d','D','i','s','p','l','a','y','D','r','i','v','e','r','s',0};
|
||||
static const WCHAR prop_interfaceindexW[] =
|
||||
{'I','n','t','e','r','f','a','c','e','I','n','d','e','x',0};
|
||||
static const WCHAR prop_interfacetypeW[] =
|
||||
@@ -701,6 +703,7 @@ static const struct column col_videocontroller[] =
|
||||
{ prop_descriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
{ prop_deviceidW, CIM_STRING|COL_FLAG_KEY },
|
||||
{ prop_driverversionW, CIM_STRING },
|
||||
+ { prop_installeddisplaydriversW,CIM_STRING },
|
||||
{ prop_nameW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
{ prop_pnpdeviceidW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
{ prop_statusW, CIM_STRING },
|
||||
@@ -1098,6 +1101,7 @@ struct record_videocontroller
|
||||
const WCHAR *description;
|
||||
const WCHAR *device_id;
|
||||
const WCHAR *driverversion;
|
||||
+ const WCHAR *installeddriver;
|
||||
const WCHAR *name;
|
||||
const WCHAR *pnpdevice_id;
|
||||
const WCHAR *status;
|
||||
@@ -3198,6 +3202,29 @@ static WCHAR *get_pnpdeviceid( DXGI_ADAPTER_DESC *desc )
|
||||
return ret;
|
||||
}
|
||||
|
||||
+#define HW_VENDOR_AMD 0x1002
|
||||
+#define HW_VENDOR_NVIDIA 0x10de
|
||||
+#define HW_VENDOR_VMWARE 0x15ad
|
||||
+#define HW_VENDOR_INTEL 0x8086
|
||||
+
|
||||
+static const WCHAR* get_video_driver(UINT vendorid)
|
||||
+{
|
||||
+ static const WCHAR driver_amdW[] = {'a','t','i','c','f','x','3','2','.','d','l','l',0};
|
||||
+ static const WCHAR driver_intelW[] = {'i','g','d','u','m','d','i','m','3','2','.','d','l','l',0};
|
||||
+ static const WCHAR driver_nvidiaW[] = {'n','v','d','3','d','u','m','.','d','l','l',0};
|
||||
+ static const WCHAR driver_wineW[] = {'w','i','n','e','.','d','l','l',0};
|
||||
+
|
||||
+ /* FIXME: wined3d has a better table, but we can not access this information through dxgi */
|
||||
+
|
||||
+ if (vendorid == HW_VENDOR_AMD)
|
||||
+ return driver_amdW;
|
||||
+ else if (vendorid == HW_VENDOR_NVIDIA)
|
||||
+ return driver_nvidiaW;
|
||||
+ else if (vendorid == HW_VENDOR_INTEL)
|
||||
+ return driver_intelW;
|
||||
+ return driver_wineW;
|
||||
+}
|
||||
+
|
||||
static enum fill_status fill_videocontroller( struct table *table, const struct expr *cond )
|
||||
{
|
||||
static const WCHAR fmtW[] = {'%','u',' ','x',' ','%','u',' ','x',' ','%','I','6','4','u',' ','c','o','l','o','r','s',0};
|
||||
@@ -3242,6 +3269,7 @@ done:
|
||||
rec->description = heap_strdupW( name );
|
||||
rec->device_id = videocontroller_deviceidW;
|
||||
rec->driverversion = videocontroller_driverversionW;
|
||||
+ rec->installeddriver = get_video_driver( desc.VendorId );
|
||||
rec->name = heap_strdupW( name );
|
||||
rec->pnpdevice_id = get_pnpdeviceid( &desc );
|
||||
rec->status = videocontroller_statusW;
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,58 @@
|
||||
From b7325b56bd63c485c58678378b549f856329bb09 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 15 Feb 2017 06:49:40 +0100
|
||||
Subject: wbemprox: Add DriverDate for Win32_VideoController.
|
||||
|
||||
---
|
||||
dlls/wbemprox/builtin.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c
|
||||
index 4da7613f24b..ffcffaa621c 100644
|
||||
--- a/dlls/wbemprox/builtin.c
|
||||
+++ b/dlls/wbemprox/builtin.c
|
||||
@@ -213,6 +213,8 @@ static const WCHAR prop_domainroleW[] =
|
||||
{'D','o','m','a','i','n','R','o','l','e',0};
|
||||
static const WCHAR prop_driveW[] =
|
||||
{'D','r','i','v','e',0};
|
||||
+static const WCHAR prop_driverdateW[] =
|
||||
+ {'D','r','i','v','e','r','D','a','t','e',0};
|
||||
static const WCHAR prop_drivernameW[] =
|
||||
{'D','r','i','v','e','r','N','a','m','e',0};
|
||||
static const WCHAR prop_driverversionW[] =
|
||||
@@ -702,6 +704,7 @@ static const struct column col_videocontroller[] =
|
||||
{ prop_currentverticalresW, CIM_UINT32, VT_I4 },
|
||||
{ prop_descriptionW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
{ prop_deviceidW, CIM_STRING|COL_FLAG_KEY },
|
||||
+ { prop_driverdateW, CIM_DATETIME },
|
||||
{ prop_driverversionW, CIM_STRING },
|
||||
{ prop_installeddisplaydriversW,CIM_STRING },
|
||||
{ prop_nameW, CIM_STRING|COL_FLAG_DYNAMIC },
|
||||
@@ -797,6 +800,8 @@ static const WCHAR videocontroller_dactypeW[] =
|
||||
{'I','n','t','e','g','r','a','t','e','d',' ','R','A','M','D','A','C',0};
|
||||
static const WCHAR videocontroller_deviceidW[] =
|
||||
{'V','i','d','e','o','C','o','n','t','r','o','l','l','e','r','1',0};
|
||||
+static const WCHAR videocontroller_driverDateW[] =
|
||||
+ {'2','0','1','7','0','1','0','1','0','0','0','0','0','0','.','0','0','0','0','0','0','+','0','0','0',0};
|
||||
static const WCHAR videocontroller_driverversionW[] =
|
||||
{'1','.','0',0};
|
||||
static const WCHAR videocontroller_statusW[] =
|
||||
@@ -1100,6 +1105,7 @@ struct record_videocontroller
|
||||
UINT32 current_verticalres;
|
||||
const WCHAR *description;
|
||||
const WCHAR *device_id;
|
||||
+ const WCHAR *driverdate;
|
||||
const WCHAR *driverversion;
|
||||
const WCHAR *installeddriver;
|
||||
const WCHAR *name;
|
||||
@@ -3268,6 +3274,7 @@ done:
|
||||
rec->current_verticalres = vres;
|
||||
rec->description = heap_strdupW( name );
|
||||
rec->device_id = videocontroller_deviceidW;
|
||||
+ rec->driverdate = videocontroller_driverDateW;
|
||||
rec->driverversion = videocontroller_driverversionW;
|
||||
rec->installeddriver = get_video_driver( desc.VendorId );
|
||||
rec->name = heap_strdupW( name );
|
||||
--
|
||||
2.11.0
|
||||
|
1
patches/wbemprox-Win32_VideoController/definition
Normal file
1
patches/wbemprox-Win32_VideoController/definition
Normal file
@ -0,0 +1 @@
|
||||
Fixes: Implement various missing columns in Win32_VideoController wbemprox class
|
Loading…
Reference in New Issue
Block a user