View | Details | Raw Unified | Return to bug 17311
Collapse All | Expand All

(-)xorg-server-1.4.2.orig/hw/xfree86/common/xf86RandR.c (+20 lines)
Lines 171-176 xf86RandRSetMode (ScreenPtr pScreen, Link Here
171
	scrp->virtualX = mode->HDisplay;
171
	scrp->virtualX = mode->HDisplay;
172
	scrp->virtualY = mode->VDisplay;
172
	scrp->virtualY = mode->VDisplay;
173
    }
173
    }
174
175
    /*
176
    * The DIX forgets the physical dimensions we passed into RRRegisterSize, so
177
    * reconstruct them if possible.
178
    */
179
    if(scrp->DriverFunc)
180
	{
181
	xorgRRModeMM RRModeMM;
182
183
	RRModeMM.mode = mode;
184
	RRModeMM.virtX = scrp->virtualX;
185
	RRModeMM.virtY = scrp->virtualY;
186
	RRModeMM.mmWidth = mmWidth;
187
	RRModeMM.mmHeight = mmHeight;
188
189
	(*scrp->DriverFunc)(scrp, RR_GET_MODE_MM, &RRModeMM);
190
191
	mmWidth = RRModeMM.mmWidth;
192
	mmHeight = RRModeMM.mmHeight;
193
    }
174
    if(randrp->rotation & (RR_Rotate_90 | RR_Rotate_270))
194
    if(randrp->rotation & (RR_Rotate_90 | RR_Rotate_270))
175
    {
195
    {
176
	/* If the screen is rotated 90 or 270 degrees, swap the sizes. */
196
	/* If the screen is rotated 90 or 270 degrees, swap the sizes. */

Return to bug 17311