[Spice-devel] [PATCH v9 1/2] Modifying ioctl structures
Sameeh Jubran
sameeh at daynix.com
Tue Aug 16 16:03:33 UTC 2016
This patch modifies the Qxl ioctl structures in order
to make them unified. Ioctls now should inherit QXL_ESCAPE
structure.
Signed-off-by: Sameeh Jubran <sameeh at daynix.com>
---
vdagent/display_configuration.cpp | 28 ++++++++++++++--------------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/vdagent/display_configuration.cpp b/vdagent/display_configuration.cpp
index 01fdbb0..cdbe5e8 100644
--- a/vdagent/display_configuration.cpp
+++ b/vdagent/display_configuration.cpp
@@ -153,26 +153,26 @@ struct DISPLAYCONFIG_PATH_INFO {
UINT32 flags;
};
-struct QXLMonitorEscape {
+struct QXLMonitorEscape : QXL_ESCAPE {
QXLMonitorEscape(DEVMODE* dev_mode)
{
- ZeroMemory(&_head, sizeof(_head));
- _head.x = dev_mode->dmPosition.x;
- _head.y = dev_mode->dmPosition.y;
- _head.width = dev_mode->dmPelsWidth;
- _head.height = dev_mode->dmPelsHeight;
+ ZeroMemory(&monitor_config, sizeof(monitor_config));
+ ioctl = QXL_ESCAPE_MONITOR_CONFIG;
+ monitor_config.x = dev_mode->dmPosition.x;
+ monitor_config.y = dev_mode->dmPosition.y;
+ monitor_config.width = dev_mode->dmPelsWidth;
+ monitor_config.height = dev_mode->dmPelsHeight;
}
- QXLHead _head;
};
-struct QxlCustomEscapeObj : public QXLEscapeSetCustomDisplay {
+struct QxlCustomEscapeObj : public QXL_ESCAPE {
QxlCustomEscapeObj(uint32_t bitsPerPel, uint32_t width, uint32_t height)
{
- xres = width;
- yres = height;
- bpp = bitsPerPel;
+ ioctl = QXL_ESCAPE_SET_CUSTOM_DISPLAY;
+ custom_display.xres = width;
+ custom_display.yres = height;
+ custom_display.bpp = bitsPerPel;
}
- QxlCustomEscapeObj() {};
};
DisplayConfig* DisplayConfig::create_config()
@@ -252,7 +252,7 @@ bool XPDMInterface::custom_display_escape(LPCTSTR device_name, DEVMODE* dev_mode
dev_mode->dmPelsWidth, dev_mode->dmPelsHeight);
int err = ExtEscape(hdc, QXL_ESCAPE_SET_CUSTOM_DISPLAY,
- sizeof(QXLEscapeSetCustomDisplay), (LPCSTR) &custom_escape, 0, NULL);
+ sizeof(QxlCustomEscapeObj), (LPCSTR) &custom_escape, 0, NULL);
if (err <= 0) {
vd_printf("%s: Can't set custom display, perhaps running with an older driver?",
__FUNCTION__);
@@ -281,7 +281,7 @@ bool XPDMInterface::update_monitor_config(LPCTSTR device_name, DisplayMode* mode
return false;
}
- err = ExtEscape(hdc, QXL_ESCAPE_MONITOR_CONFIG, sizeof(QXLHead),
+ err = ExtEscape(hdc, QXL_ESCAPE_MONITOR_CONFIG, sizeof(QXLMonitorEscape),
(LPCSTR) &monitor_config, 0, NULL);
if (err < 0) {
vd_printf("%s: %S can't update monitor config, may have old, old driver",
--
2.7.4
More information about the Spice-devel
mailing list