Revert "randr: ProcRRGetCrtcInfo(): use locally scoped variables"
This reverts commit 90abc95c85.
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2012>
This commit is contained in:
parent
c371d11af0
commit
9c53c6cf76
|
|
@ -1148,19 +1148,28 @@ ProcRRGetCrtcInfo(ClientPtr client)
|
||||||
RRCrtcPtr crtc;
|
RRCrtcPtr crtc;
|
||||||
CARD8 *extra = NULL;
|
CARD8 *extra = NULL;
|
||||||
unsigned long extraLen = 0;
|
unsigned long extraLen = 0;
|
||||||
|
ScreenPtr pScreen;
|
||||||
|
rrScrPrivPtr pScrPriv;
|
||||||
|
RRModePtr mode;
|
||||||
|
RROutput *outputs;
|
||||||
|
RROutput *possible;
|
||||||
|
int i, j, k;
|
||||||
|
int width, height;
|
||||||
|
BoxRec panned_area;
|
||||||
|
Bool leased;
|
||||||
|
|
||||||
REQUEST_SIZE_MATCH(xRRGetCrtcInfoReq);
|
REQUEST_SIZE_MATCH(xRRGetCrtcInfoReq);
|
||||||
VERIFY_RR_CRTC(stuff->crtc, crtc, DixReadAccess);
|
VERIFY_RR_CRTC(stuff->crtc, crtc, DixReadAccess);
|
||||||
|
|
||||||
Bool leased = RRCrtcIsLeased(crtc);
|
leased = RRCrtcIsLeased(crtc);
|
||||||
|
|
||||||
/* All crtcs must be associated with screens before client
|
/* All crtcs must be associated with screens before client
|
||||||
* requests are processed
|
* requests are processed
|
||||||
*/
|
*/
|
||||||
ScreenPtr pScreen = crtc->pScreen;
|
pScreen = crtc->pScreen;
|
||||||
rrScrPrivPtr pScrPriv = rrGetScrPriv(pScreen);
|
pScrPriv = rrGetScrPriv(pScreen);
|
||||||
|
|
||||||
RRModePtr mode = crtc->mode;
|
mode = crtc->mode;
|
||||||
|
|
||||||
xRRGetCrtcInfoReply rep = {
|
xRRGetCrtcInfoReply rep = {
|
||||||
.type = X_Reply,
|
.type = X_Reply,
|
||||||
|
|
@ -1174,7 +1183,6 @@ ProcRRGetCrtcInfo(ClientPtr client)
|
||||||
rep.rotation = RR_Rotate_0;
|
rep.rotation = RR_Rotate_0;
|
||||||
rep.rotations = RR_Rotate_0;
|
rep.rotations = RR_Rotate_0;
|
||||||
} else {
|
} else {
|
||||||
BoxRec panned_area;
|
|
||||||
if (pScrPriv->rrGetPanning &&
|
if (pScrPriv->rrGetPanning &&
|
||||||
pScrPriv->rrGetPanning(pScreen, crtc, &panned_area, NULL, NULL) &&
|
pScrPriv->rrGetPanning(pScreen, crtc, &panned_area, NULL, NULL) &&
|
||||||
(panned_area.x2 > panned_area.x1) && (panned_area.y2 > panned_area.y1))
|
(panned_area.x2 > panned_area.x1) && (panned_area.y2 > panned_area.y1))
|
||||||
|
|
@ -1185,7 +1193,6 @@ ProcRRGetCrtcInfo(ClientPtr client)
|
||||||
rep.height = panned_area.y2 - panned_area.y1;
|
rep.height = panned_area.y2 - panned_area.y1;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
int width, height;
|
|
||||||
RRCrtcGetScanoutSize(crtc, &width, &height);
|
RRCrtcGetScanoutSize(crtc, &width, &height);
|
||||||
rep.x = crtc->x;
|
rep.x = crtc->x;
|
||||||
rep.y = crtc->y;
|
rep.y = crtc->y;
|
||||||
|
|
@ -1194,9 +1201,9 @@ ProcRRGetCrtcInfo(ClientPtr client)
|
||||||
}
|
}
|
||||||
rep.mode = mode ? mode->mode.id : 0;
|
rep.mode = mode ? mode->mode.id : 0;
|
||||||
rep.nOutput = crtc->numOutputs;
|
rep.nOutput = crtc->numOutputs;
|
||||||
for (int i = 0; i < pScrPriv->numOutputs; i++) {
|
for (i = 0; i < pScrPriv->numOutputs; i++) {
|
||||||
if (!RROutputIsLeased(pScrPriv->outputs[i])) {
|
if (!RROutputIsLeased(pScrPriv->outputs[i])) {
|
||||||
for (int j = 0; j < pScrPriv->outputs[i]->numCrtcs; j++)
|
for (j = 0; j < pScrPriv->outputs[i]->numCrtcs; j++)
|
||||||
if (pScrPriv->outputs[i]->crtcs[j] == crtc)
|
if (pScrPriv->outputs[i]->crtcs[j] == crtc)
|
||||||
rep.nPossibleOutput++;
|
rep.nPossibleOutput++;
|
||||||
}
|
}
|
||||||
|
|
@ -1211,19 +1218,18 @@ ProcRRGetCrtcInfo(ClientPtr client)
|
||||||
return BadAlloc;
|
return BadAlloc;
|
||||||
}
|
}
|
||||||
|
|
||||||
RROutput *outputs = (RROutput *) extra;
|
outputs = (RROutput *) extra;
|
||||||
RROutput *possible = (RROutput *) (outputs + rep.nOutput);
|
possible = (RROutput *) (outputs + rep.nOutput);
|
||||||
|
|
||||||
for (int i = 0; i < crtc->numOutputs; i++) {
|
for (i = 0; i < crtc->numOutputs; i++) {
|
||||||
outputs[i] = crtc->outputs[i]->id;
|
outputs[i] = crtc->outputs[i]->id;
|
||||||
if (client->swapped)
|
if (client->swapped)
|
||||||
swapl(&outputs[i]);
|
swapl(&outputs[i]);
|
||||||
}
|
}
|
||||||
|
k = 0;
|
||||||
int k = 0;
|
for (i = 0; i < pScrPriv->numOutputs; i++) {
|
||||||
for (int i = 0; i < pScrPriv->numOutputs; i++) {
|
|
||||||
if (!RROutputIsLeased(pScrPriv->outputs[i])) {
|
if (!RROutputIsLeased(pScrPriv->outputs[i])) {
|
||||||
for (int j = 0; j < pScrPriv->outputs[i]->numCrtcs; j++)
|
for (j = 0; j < pScrPriv->outputs[i]->numCrtcs; j++)
|
||||||
if (pScrPriv->outputs[i]->crtcs[j] == crtc) {
|
if (pScrPriv->outputs[i]->crtcs[j] == crtc) {
|
||||||
possible[k] = pScrPriv->outputs[i]->id;
|
possible[k] = pScrPriv->outputs[i]->id;
|
||||||
if (client->swapped)
|
if (client->swapped)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue