aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86/dri2/dri2ext.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2012-06-04 09:40:31 +0200
committermarha <marha@users.sourceforge.net>2012-06-04 09:40:31 +0200
commit63918271b55923e417b14b9e7add4443582cfab3 (patch)
tree59fc1c26991bbdb97d306da11408e98f49e05607 /xorg-server/hw/xfree86/dri2/dri2ext.c
parent7d6bc8457187e6c4284201b3a6625357c4aca9b4 (diff)
parent1af6fc1b5d93e54d6674de8b5870448b29f139a7 (diff)
downloadvcxsrv-63918271b55923e417b14b9e7add4443582cfab3.tar.gz
vcxsrv-63918271b55923e417b14b9e7add4443582cfab3.tar.bz2
vcxsrv-63918271b55923e417b14b9e7add4443582cfab3.zip
Merge remote-tracking branch 'origin/released'
Diffstat (limited to 'xorg-server/hw/xfree86/dri2/dri2ext.c')
-rw-r--r--xorg-server/hw/xfree86/dri2/dri2ext.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/xorg-server/hw/xfree86/dri2/dri2ext.c b/xorg-server/hw/xfree86/dri2/dri2ext.c
index 61578f3c1..c6f5b4e11 100644
--- a/xorg-server/hw/xfree86/dri2/dri2ext.c
+++ b/xorg-server/hw/xfree86/dri2/dri2ext.c
@@ -535,6 +535,37 @@ ProcDRI2WaitSBC(ClientPtr client)
}
static int
+ProcDRI2GetParam(ClientPtr client)
+{
+ REQUEST(xDRI2GetParamReq);
+ xDRI2GetParamReply rep;
+ DrawablePtr pDrawable;
+ CARD64 value;
+ int status;
+
+ REQUEST_SIZE_MATCH(xDRI2GetParamReq);
+ rep.type = X_Reply;
+ rep.length = 0;
+ rep.sequenceNumber = client->sequence;
+
+ if (!validDrawable(client, stuff->drawable, DixReadAccess,
+ &pDrawable, &status))
+ return status;
+
+ status = DRI2GetParam(client, pDrawable, stuff->param,
+ &rep.is_param_recognized, &value);
+ rep.value_hi = value >> 32;
+ rep.value_lo = value & 0xffffffff;
+
+ if (status != Success)
+ return status;
+
+ WriteToClient(client, sizeof(xDRI2GetParamReply), &rep);
+
+ return status;
+}
+
+static int
ProcDRI2Dispatch(ClientPtr client)
{
REQUEST(xReq);
@@ -572,6 +603,8 @@ ProcDRI2Dispatch(ClientPtr client)
return ProcDRI2WaitSBC(client);
case X_DRI2SwapInterval:
return ProcDRI2SwapInterval(client);
+ case X_DRI2GetParam:
+ return ProcDRI2GetParam(client);
default:
return BadRequest;
}