winex11: Fix compilation on systems that don't support either nameless unions or nameless structs.
Francois Gouget
fgouget at free.fr
Mon Nov 5 05:35:18 CST 2007
---
dlls/winex11.drv/settings.c | 34 +++++++++++++++++++---------------
1 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/dlls/winex11.drv/settings.c b/dlls/winex11.drv/settings.c
index 116bf15..2de20ca 100644
--- a/dlls/winex11.drv/settings.c
+++ b/dlls/winex11.drv/settings.c
@@ -21,6 +21,10 @@
#include "config.h"
#include <string.h>
#include <stdio.h>
+
+#define NONAMELESSUNION
+#define NONAMELESSSTRUCT
+
#include "x11drv.h"
#include "windef.h"
@@ -185,11 +189,11 @@ static BOOL read_registry_settings(DEVMODEW *dm)
query_value("DefaultSettings.XResolution", &dm->dmPelsWidth);
query_value("DefaultSettings.YResolution", &dm->dmPelsHeight);
query_value("DefaultSettings.VRefresh", &dm->dmDisplayFrequency);
- query_value("DefaultSettings.Flags", &dm->dmDisplayFlags);
- query_value("DefaultSettings.XPanning", &dm->dmPosition.x);
- query_value("DefaultSettings.YPanning", &dm->dmPosition.y);
- query_value("DefaultSettings.Orientation", &dm->dmDisplayOrientation);
- query_value("DefaultSettings.FixedOutput", &dm->dmDisplayFixedOutput);
+ query_value("DefaultSettings.Flags", &dm->u2.dmDisplayFlags);
+ query_value("DefaultSettings.XPanning", &dm->u1.s2.dmPosition.x);
+ query_value("DefaultSettings.YPanning", &dm->u1.s2.dmPosition.y);
+ query_value("DefaultSettings.Orientation", &dm->u1.s2.dmDisplayOrientation);
+ query_value("DefaultSettings.FixedOutput", &dm->u1.s2.dmDisplayFixedOutput);
#undef query_value
@@ -213,11 +217,11 @@ static BOOL write_registry_settings(const DEVMODEW *dm)
set_value("DefaultSettings.XResolution", &dm->dmPelsWidth);
set_value("DefaultSettings.YResolution", &dm->dmPelsHeight);
set_value("DefaultSettings.VRefresh", &dm->dmDisplayFrequency);
- set_value("DefaultSettings.Flags", &dm->dmDisplayFlags);
- set_value("DefaultSettings.XPanning", &dm->dmPosition.x);
- set_value("DefaultSettings.YPanning", &dm->dmPosition.y);
- set_value("DefaultSettings.Orientation", &dm->dmDisplayOrientation);
- set_value("DefaultSettings.FixedOutput", &dm->dmDisplayFixedOutput);
+ set_value("DefaultSettings.Flags", &dm->u2.dmDisplayFlags);
+ set_value("DefaultSettings.XPanning", &dm->u1.s2.dmPosition.x);
+ set_value("DefaultSettings.YPanning", &dm->u1.s2.dmPosition.y);
+ set_value("DefaultSettings.Orientation", &dm->u1.s2.dmDisplayOrientation);
+ set_value("DefaultSettings.FixedOutput", &dm->u1.s2.dmDisplayFixedOutput);
#undef set_value
@@ -243,12 +247,12 @@ BOOL X11DRV_EnumDisplaySettingsEx( LPCWSTR name, DWORD n, LPDEVMODEW devmode, DW
devmode->dmDriverVersion = MAKEWORD(1,4);
memcpy(devmode->dmDeviceName, dev_name, sizeof(dev_name));
devmode->dmDriverExtra = 0;
- devmode->dmDisplayFlags = 0;
+ devmode->u2.dmDisplayFlags = 0;
devmode->dmDisplayFrequency = 0;
- devmode->dmPosition.x = 0;
- devmode->dmPosition.y = 0;
- devmode->dmDisplayOrientation = 0;
- devmode->dmDisplayFixedOutput = 0;
+ devmode->u1.s2.dmPosition.x = 0;
+ devmode->u1.s2.dmPosition.y = 0;
+ devmode->u1.s2.dmDisplayOrientation = 0;
+ devmode->u1.s2.dmDisplayFixedOutput = 0;
if (n == ENUM_CURRENT_SETTINGS)
{
--
1.5.3.4
More information about the wine-patches
mailing list