Index: xc/ChangeLog =================================================================== RCS file: /cvs/xorg/xc/ChangeLog,v retrieving revision 1.829 diff -u -2 -0 -r1.829 ChangeLog --- xc/ChangeLog 22 Mar 2005 21:30:43 -0000 1.829 +++ xc/ChangeLog 23 Mar 2005 00:27:29 -0000 @@ -1,20 +1,27 @@ +2005-03-22 Roland Mainz + * xc/programs/Xserver/hw/vfb/InitOutput.c + bugzilla #2789 (https://bugs.freedesktop.org/show_bug.cgi?id=2789) + attachment #xxx (https://bugs.freedesktop.org/attachment.cgi?id=xxx) + Fix Xvfb to honor the "-dpi" option (instead of using a hardcoded + value of 100DPI). + 2005-03-22 Adam Jackson * programs/Xserver/hw/xfree86/xorg.conf.man: Bug #1821: Typo fix in xorg.conf man page (Jens Schweikhardt) Tue Mar 22 12:47:16 2005 Søren Sandmann * programs/Xserver/miext/damage/damage.c (damageCopyPlane): Only validate the source if it is a viewable window. Stops the cursor flickering when it is above an unviewable window. 2005-03-21 Alan Hourihane * programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c Fix some bad alignment problems when allocating memory from the end of AGP space. Bugzilla #2764 (https://bugs.freedesktop.org/show_bug.cgi?id=2764) 2005-03-20 Alan Coopersmith * xc/lib/X11/ErrDes.c * xc/lib/X11/XKBSetGeom.c Index: xc/programs/Xserver/hw/vfb/InitOutput.c =================================================================== RCS file: /cvs/xorg/xc/programs/Xserver/hw/vfb/InitOutput.c,v retrieving revision 1.6 diff -u -2 -0 -r1.6 InitOutput.c --- xc/programs/Xserver/hw/vfb/InitOutput.c 27 Aug 2004 01:15:10 -0000 1.6 +++ xc/programs/Xserver/hw/vfb/InitOutput.c 23 Mar 2005 00:28:03 -0000 @@ -838,43 +838,49 @@ { vfbScreenInfoPtr pvfb = &vfbScreens[index]; int i; pScreen->CloseScreen = pvfb->closeScreen; /* * XXX probably lots of stuff to clean. For now, * clear InstalledMaps[] so that server reset works correctly. */ for (i = 0; i < MAXSCREENS; i++) InstalledMaps[i] = NULL; return pScreen->CloseScreen(index, pScreen); } static Bool vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv) { vfbScreenInfoPtr pvfb = &vfbScreens[index]; - int dpix = 100, dpiy = 100; + int dpix = monitorResolution, dpiy = monitorResolution; int ret; char *pbits; + + if (dpix == 0) + dpix = 100; + + if (dpiy == 0) + dpiy = 100; pvfb->paddedBytesWidth = PixmapBytePad(pvfb->width, pvfb->depth); pvfb->bitsPerPixel = vfbBitsPerPixel(pvfb->depth); if (pvfb->bitsPerPixel >= 8 ) pvfb->paddedWidth = pvfb->paddedBytesWidth / (pvfb->bitsPerPixel / 8); else pvfb->paddedWidth = pvfb->paddedBytesWidth * 8; pbits = vfbAllocateFramebufferMemory(pvfb); if (!pbits) return FALSE; miSetPixmapDepths (); switch (pvfb->depth) { case 8: miSetVisualTypesAndMasks (8, ((1 << StaticGray) | (1 << GrayScale) | (1 << StaticColor) | (1 << PseudoColor) | (1 << TrueColor) |