diff options
author | Thomas Hellstrom <thellstrom@vmware.com> | 2011-11-17 16:38:22 +0100 |
---|---|---|
committer | Thomas Hellstrom <thellstrom@vmware.com> | 2011-11-22 08:19:18 +0100 |
commit | abf9cb75630cb27bb4741d194cb23014fe3d09b1 (patch) | |
tree | 94d57396bb3808c56864b03d27061d6761725f85 | |
parent | be23efbc91f47a6a34fbe24f167ee29fdf58f541 (diff) |
vmwlegacy: Fix up Xinerama / panoramiX replies.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
-rw-r--r-- | src/vmwarexinerama.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/vmwarexinerama.c b/src/vmwarexinerama.c index 49df3f2..954abdc 100644 --- a/src/vmwarexinerama.c +++ b/src/vmwarexinerama.c @@ -153,9 +153,11 @@ VMwareXineramaGetState(ClientPtr client) rep.length = 0; rep.sequenceNumber = client->sequence; rep.state = pVMWARE->xinerama; + rep.window = stuff->window; if(client->swapped) { _swaps (&rep.sequenceNumber, n); _swapl (&rep.length, n); + _swapl (&rep.window, n); } WriteToClient(client, sizeof(xPanoramiXGetStateReply), (char *)&rep); return client->noClientException; @@ -206,9 +208,12 @@ VMwareXineramaGetScreenCount(ClientPtr client) rep.length = 0; rep.sequenceNumber = client->sequence; rep.ScreenCount = pVMWARE->xineramaNumOutputs; + rep.window = stuff->window; + if(client->swapped) { _swaps(&rep.sequenceNumber, n); _swapl(&rep.length, n); + _swapl(&rep.window, n); } WriteToClient(client, sizeof(xPanoramiXGetScreenCountReply), (char *)&rep); return client->noClientException; @@ -244,6 +249,7 @@ VMwareXineramaGetScreenSize(ClientPtr client) VMWAREPtr pVMWARE; int rc; + REQUEST_SIZE_MATCH(xPanoramiXGetScreenSizeReq); rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); if (rc != Success) @@ -260,11 +266,15 @@ VMwareXineramaGetScreenSize(ClientPtr client) rep.sequenceNumber = client->sequence; rep.width = pVMWARE->xineramaState[stuff->screen].width; rep.height = pVMWARE->xineramaState[stuff->screen].height; + rep.window = stuff->window; + rep.screen = stuff->screen; if(client->swapped) { _swaps(&rep.sequenceNumber, n); _swapl(&rep.length, n); _swapl(&rep.width, n); _swapl(&rep.height, n); + _swapl(&rep.window, n); + _swapl(&rep.screen, n); } WriteToClient(client, sizeof(xPanoramiXGetScreenSizeReply), (char *)&rep); return client->noClientException; |