[Spice-devel] [PATCH win-agent 1/2] Refresh monitor config only when needed

Marc-André Lureau marcandre.lureau at gmail.com
Fri Mar 15 17:03:47 PDT 2013


Somehow wnd_proc()->get_display() may be reentered during ChangeDisplaySettings
---
 vdagent/vdagent.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/vdagent/vdagent.cpp b/vdagent/vdagent.cpp
index 6f2a49c..c56025d 100644
--- a/vdagent/vdagent.cpp
+++ b/vdagent/vdagent.cpp
@@ -579,6 +579,7 @@ bool VDAgent::handle_mon_config(VDAgentMonitorsConfig* mon_config, uint32_t port
     VDAgentReply* reply;
     size_t display_count;
 
+    _desktop_layout->get_displays();
     display_count = _desktop_layout->get_display_count();
     for (uint32_t i = 0; i < display_count; i++) {
         DisplayMode* mode = _desktop_layout->get_display(i);
@@ -1327,7 +1328,6 @@ LRESULT CALLBACK VDAgent::wnd_proc(HWND hwnd, UINT message, WPARAM wparam, LPARA
     switch (message) {
     case WM_DISPLAYCHANGE:
         vd_printf("Display change");
-        a->_desktop_layout->get_displays();
         break;
     case WM_TIMER:
         a->send_input();
-- 
1.8.1.1.439.g50a6b54



More information about the Spice-devel mailing list