diff options
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | randr/randrstr.h | 3 | ||||
-rw-r--r-- | randr/rrdispatch.c | 5 | ||||
-rw-r--r-- | randr/rrscreen.c | 18 | ||||
-rw-r--r-- | randr/rrsdispatch.c | 5 |
5 files changed, 25 insertions, 8 deletions
diff --git a/configure.ac b/configure.ac index 49d416593..ea3d0fa73 100644 --- a/configure.ac +++ b/configure.ac @@ -664,7 +664,7 @@ XEXT_LIB='$(top_builddir)/Xext/libXext.la' XEXTXORG_LIB='$(top_builddir)/Xext/libXextbuiltin.la' dnl Core modules for most extensions, et al. -REQUIRED_MODULES="[randrproto >= 1.2] [renderproto >= 0.9.3] [fixesproto >= 4.0] [damageproto >= 1.1] xcmiscproto [xextproto >= 7.0.3] [xproto >= 7.0.13] [xtrans >= 1.2.2] bigreqsproto resourceproto fontsproto [inputproto >= 1.9.99.6] [kbproto >= 1.0.3]" +REQUIRED_MODULES="[randrproto >= 1.2.99.1] [renderproto >= 0.9.3] [fixesproto >= 4.0] [damageproto >= 1.1] xcmiscproto [xextproto >= 7.0.3] [xproto >= 7.0.13] [xtrans >= 1.2.2] bigreqsproto resourceproto fontsproto [inputproto >= 1.9.99.6] [kbproto >= 1.0.3]" REQUIRED_LIBS="xfont xau fontenc [pixman-1 >= 0.13.2]" dnl HAVE_DBUS is true if we actually have the D-Bus library, whereas diff --git a/randr/randrstr.h b/randr/randrstr.h index 822e37747..64206e88d 100644 --- a/randr/randrstr.h +++ b/randr/randrstr.h @@ -388,6 +388,9 @@ int ProcRRGetScreenResources (ClientPtr client); int +ProcRRGetScreenResourcesCurrent (ClientPtr client); + +int ProcRRSetScreenConfig (ClientPtr client); int diff --git a/randr/rrdispatch.c b/randr/rrdispatch.c index 20b471c09..64af6ce2a 100644 --- a/randr/rrdispatch.c +++ b/randr/rrdispatch.c @@ -212,7 +212,8 @@ int (*ProcRandrVector[RRNumberRequests])(ClientPtr) = { ProcRRGetCrtcGamma, /* 23 */ ProcRRSetCrtcGamma, /* 24 */ /* V1.3 additions */ - ProcRRSetCrtcTransform, /* 25 */ - ProcRRGetCrtcTransform, /* 26 */ + ProcRRGetScreenResourcesCurrent, /* 25 */ + ProcRRSetCrtcTransform, /* 26 */ + ProcRRGetCrtcTransform, /* 27 */ }; diff --git a/randr/rrscreen.c b/randr/rrscreen.c index a910368b3..7a8f2ebc7 100644 --- a/randr/rrscreen.c +++ b/randr/rrscreen.c @@ -314,8 +314,8 @@ ProcRRSetScreenSize (ClientPtr client) return Success; } -int -ProcRRGetScreenResources (ClientPtr client) +static int +rrGetScreenResources(ClientPtr client, Bool query) { REQUEST(xRRGetScreenResourcesReq); xRRGetScreenResourcesReply rep; @@ -339,7 +339,7 @@ ProcRRGetScreenResources (ClientPtr client) pScrPriv = rrGetScrPriv(pScreen); rep.pad = 0; - if (pScrPriv) + if (query && pScrPriv) if (!RRGetInfo (pScreen)) return BadAlloc; @@ -463,6 +463,18 @@ ProcRRGetScreenResources (ClientPtr client) return client->noClientException; } +int +ProcRRGetScreenResources (ClientPtr client) +{ + return rrGetScreenResources(client, TRUE); +} + +int +ProcRRGetScreenResourcesCurrent (ClientPtr client) +{ + return rrGetScreenResources(client, FALSE); +} + typedef struct _RR10Data { RRScreenSizePtr sizes; int nsize; diff --git a/randr/rrsdispatch.c b/randr/rrsdispatch.c index 66a0e1677..5a6dab5bf 100644 --- a/randr/rrsdispatch.c +++ b/randr/rrsdispatch.c @@ -415,7 +415,8 @@ int (*SProcRandrVector[RRNumberRequests])(ClientPtr) = { SProcRRGetCrtcGamma, /* 23 */ SProcRRSetCrtcGamma, /* 24 */ /* V1.3 additions */ - SProcRRSetCrtcTransform, /* 25 */ - SProcRRGetCrtcTransform, /* 26 */ + SProcRRGetScreenResources, /* 25 GetScreenResourcesCurrent */ + SProcRRSetCrtcTransform, /* 26 */ + SProcRRGetCrtcTransform, /* 27 */ }; |