summaryrefslogtreecommitdiff
path: root/graphics/xv/files/patch-xvimage.c
blob: a233568a49557cf9e69e368b771513a84edf6ba4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
--- xvimage.c.orig	Fri Dec 15 07:32:23 2006
+++ xvimage.c	Fri Dec 15 07:45:46 2006
@@ -1977,10 +1977,10 @@
   case 12:
   case 15:
   case 16: {
-    unsigned short  *imagedata, *ip;
+    byte  *imagedata, *ip;
     byte  *pp;
 
-    imagedata = (unsigned short *) malloc((size_t) (2*wide*high));
+    imagedata = (byte *) malloc((size_t) (2*wide*high));
     if (!imagedata) FatalError("couldn't malloc imagedata");
 
     xim = XCreateImage(theDisp,theVisual,dispDEEP,ZPixmap,0,
@@ -2003,8 +2003,8 @@
 	if (dithpic) xcol = ((*pp) ? white : black) & 0xffff;
 		else xcol = xcolors[*pp] & 0xffff;
 
-	*((unsigned char *)ip)++ = (xcol>>8) & 0xff;
-	*((unsigned char *)ip)++ = (xcol) & 0xff;
+	*(ip++) = (xcol>>8) & 0xff;
+	*(ip++) = (xcol) & 0xff;
       }
     }
     else {   /* LSBFirst */
@@ -2014,8 +2014,8 @@
 	if (dithpic) xcol = ((*pp) ? white : black) & 0xffff;
 	        else xcol = xcolors[*pp];
 
-	*((unsigned char *)ip)++ = (xcol) & 0xff;
-	*((unsigned char *)ip)++ = (xcol>>8) & 0xff;
+	*(ip++) = (xcol) & 0xff;
+	*(ip++) = (xcol>>8) & 0xff;
       }
     }
   }
@@ -2214,7 +2214,8 @@
 		*ip++ = xcol & 0xff;
 		break;
 	      case 16:
-		*((CARD16 *)ip)++ = (CARD16)xcol;
+		*((CARD16 *)ip) = (CARD16)xcol;
+		ip += 2;
 		break;
 	      }
 	    }
@@ -2243,7 +2244,8 @@
 	  *ip++ = xcol & 0xff;
 	  break;
 	case 16:
-	  *((CARD16 *)ip)++ = (CARD16)xcol;
+	  *((CARD16 *)ip) = (CARD16)xcol;
+	  ip += 2;
 	  break;
 	case 24:
 	  *ip++ = (xcol >> 16) & 0xff;
@@ -2251,7 +2253,8 @@
 	  *ip++ =  xcol        & 0xff;
 	  break;
 	case 32:
-	  *((CARD32 *)ip)++ = (CARD32)xcol;
+	  *((CARD32 *)ip) = (CARD32)xcol;
+	  ip += 4;
 	  break;
 	}
       }