[xorg-commit-diffs] xc/programs/Xserver/Xst xst_cb.c, 1.1.4.1, 1.1.4.2

Jay Hobson xorg-commit at pdx.freedesktop.org
Fri Apr 9 07:50:33 PDT 2004


Committed by: jhobson

Update of /cvs/xorg/xc/programs/Xserver/Xst
In directory pdx:/tmp/cvs-serv1007

Modified Files:
      Tag: XORG-RELEASE-1-STSF
	xst_cb.c 
Log Message:
Fix issue with gnome-2.6 gdm. Do not set glyph size equal to clip region.


Index: xst_cb.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/Xst/Attic/xst_cb.c,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/xst_cb.c	6 Apr 2004 02:41:20 -0000	1.1.4.1
+++ b/xst_cb.c	9 Apr 2004 14:50:30 -0000	1.1.4.2
@@ -397,11 +397,16 @@
 	    if ( pPix32 == NULL )
 	    {
 		unsigned int *data32 = (pointer) xalloc ( sizeof ( int  ) * 64 * 64 );
-		pPix32 = GetScratchPixmapHeader ( iDraw->pScreen, 64, 64,
+		ScreenPtr pScreen     = iDraw->pScreen;
+
+	        if ( pScreen == NULL )
+		    pScreen = iGC->pScreen;
+
+		pPix32 = GetScratchPixmapHeader ( pScreen, 64, 64,
                                                   24, BitsPerPixel(24),
                                                   PixmapBytePad(64,24), (pointer)data32 );
                 if ( gpGC32AA == NULL )
-		    gpGC32AA = GetScratchGC ( 24, iDraw->pScreen );
+		    gpGC32AA = GetScratchGC ( 24, pScreen );
 
 		if ( gpGC32AA == NULL || pPix32 == NULL )
 		    return NULL;
@@ -413,7 +418,12 @@
 	{
 	    if ( pPix8 == NULL )
 	    {
-		pPix8  = GetScratchPixmapHeader(iDraw->pScreen, 64, 64,
+		ScreenPtr pScreen     = iDraw->pScreen;
+
+	        if ( pScreen == NULL )
+		    pScreen = iGC->pScreen;
+
+		pPix8  = GetScratchPixmapHeader(pScreen, 64, 64,
                                                         8,  8, 256, NULL);
 		if ( pPix8 == NULL )
 		    return NULL;
@@ -3617,10 +3627,10 @@
             if ( *ioX2 + pDraw->x < pboxInit[i].x1 ) continue;
             in = 1;
 
-            *ioX1 = pboxInit[i].x1;
-            *ioY1 = pboxInit[i].y1;
-            *ioX2 = (( pboxInit[i].x2 < pDraw->width )? pboxInit[i].x2: pDraw->width );
-            *ioY2 = (( pboxInit[i].y2 < pDraw->height)? pboxInit[i].y2: pDraw->height);
+	    if ( *ioX1 < pboxInit[i].x1 ) *ioX1 = pboxInit[i].x1;
+            if ( *ioY1 < pboxInit[i].y1 ) *ioY1 = pboxInit[i].y1;
+            if ( *ioX2 > pboxInit[i].x2 ) *ioX2 = (( pboxInit[i].x2 < pDraw->width )? pboxInit[i].x2: pDraw->width );
+            if ( *ioY2 > pboxInit[i].y2 ) *ioY2 = (( pboxInit[i].y2 < pDraw->height)? pboxInit[i].y2: pDraw->height);
             break;
         }
     }
@@ -5070,7 +5080,7 @@
 	gnCI = 0;
 	return;
     }
-    else
+    else  if ( gnCD > 0 )
     {
         Status        result     = rdpriv->client->noClientException;
         STStatus      st         = -1;




More information about the xorg-commit-diffs mailing list