[cairo-commit] libpixman/src ic.c,1.20,1.21

Jeff Muizelaar commit at pdx.freedesktop.org
Thu Jun 23 19:33:36 PDT 2005


Committed by: jrmuizel

Update of /cvs/cairo/libpixman/src
In directory gabe:/tmp/cvs-serv22320/src

Modified Files:
	ic.c 
Log Message:
2005-06-23  Jeff Muizelaar  <jeff at infidigm.net>

	* src/ic.c: (pixman_compositeSrcAdd_8000x8000),
	(pixman_compositeSrcAdd_8888x8888):
	more merging:

	630. Fix incorrect datatype for the pixmap width in
	fbCompositeSrcAdd_8000x8000(), and add some small optimisations
	(#A.1423, Keith Packard).


Index: ic.c
===================================================================
RCS file: /cvs/cairo/libpixman/src/ic.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- ic.c	27 Apr 2005 20:02:20 -0000	1.20
+++ ic.c	24 Jun 2005 02:33:34 -0000	1.21
@@ -681,13 +681,17 @@
 	while (w--)
 	{
 	    s = *src++;
-	    if (s != 0xff)
+	    if (s)
 	    {
-		d = *dst;
-		t = d + s;
-		s = t | (0 - (t >> 8));
+		if (s != 0xff)
+		{
+		    d = *dst;
+		    t = d + s;
+		    s = t | (0 - (t >> 8));
+		}
+		*dst = s;
 	    }
-	    *dst++ = s;
+	    dst++;
 	}
     }
 }
@@ -728,19 +732,23 @@
 	while (w--)
 	{
 	    s = *src++;
-	    if (s != 0xffffffff)
+	    if (s)
 	    {
-		d = *dst;
-		if (d)
+		if (s != 0xffffffff)
 		{
-		    m = IcAdd(s,d,0,t);
-		    n = IcAdd(s,d,8,t);
-		    o = IcAdd(s,d,16,t);
-		    p = IcAdd(s,d,24,t);
-		    s = m|n|o|p;
+		    d = *dst;
+		    if (d)
+		    {
+			m = IcAdd(s,d,0,t);
+			n = IcAdd(s,d,8,t);
+			o = IcAdd(s,d,16,t);
+			p = IcAdd(s,d,24,t);
+			s = m|n|o|p;
+		    }
 		}
+		*dst = s;
 	    }
-	    *dst++ = s;
+	    dst++;
 	}
     }
 }




More information about the cairo-commit mailing list