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@xxxxxxxxxx> --- 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 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel