summaryrefslogtreecommitdiff
path: root/x11/xview-lib/patches/patch-av
blob: 7cd13fd071d30bf9cb495708758e087b57cad420 (plain)
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
$NetBSD: patch-av,v 1.3 2009/12/10 20:35:57 abs Exp $

--- lib/libxview/color/cms_pblc.c.orig	1993-06-29 05:15:53.000000000 +0000
+++ lib/libxview/color/cms_pblc.c
@@ -316,14 +316,13 @@ cms_get_attr(cms_public, status, attr, a
 {
     Cms_info		*cms = CMS_PRIVATE(cms_public);
     Xv_opaque		value;
-    Attr_avlist     	avlist = (Attr_avlist) args;
     int			cms_status = 0;
 
     switch (attr) {
       case CMS_PIXEL: {
 	  unsigned long    index;
 	  
-	  index = (unsigned long)avlist[0];
+	  index = (unsigned long)va_arg(args, Attr_attribute);
 	  if (index >= cms->size) {
 	      index = cms->size - 1;
 	  } else if (index < 0) {
@@ -397,30 +396,28 @@ cms_get_attr(cms_public, status, attr, a
 	value = (Xv_opaque)cms->cmap->id;
 	break;
 	
-      case CMS_COLORS:  
-	if (cms_get_colors(cms, (unsigned long)0, cms->size, 
-			   (Xv_singlecolor *)avlist[0], (XColor *)NULL,
-			   (unsigned char *)NULL, (unsigned char *)NULL,
-			   (unsigned char *)NULL) == XV_OK) {
-	    value = (Xv_opaque)avlist[0];
-	} else {
+      case CMS_COLORS:
+	value = (Xv_opaque)va_arg(args,Attr_attribute);
+	if (!cms_get_colors(cms, (unsigned long)0, cms->size, 
+			    value, (XColor *)NULL,
+			    (unsigned char *)NULL, (unsigned char *)NULL,
+			    (unsigned char *)NULL) == XV_OK) {
 	    value = NULL;
 	}
 	break;
 	
       case CMS_X_COLORS:  
-	if (cms_get_colors(cms, (unsigned long)0, cms->size, 
-			   (Xv_singlecolor *)NULL, (XColor *)avlist[0],
-			   (unsigned char *)NULL, (unsigned char *)NULL,
-			   (unsigned char *)NULL) == XV_OK) {
-	    value = (Xv_opaque)avlist[0];
-	} else {
+	value = (Xv_opaque)va_arg(args, Attr_attribute);
+	if (!cms_get_colors(cms, (unsigned long)0, cms->size, 
+			    (Xv_singlecolor *)NULL, value,
+			    (unsigned char *)NULL, (unsigned char *)NULL,
+			    (unsigned char *)NULL) == XV_OK) {
 	    value = NULL;
 	}
 	break;
 	
       case CMS_CMS_DATA: {
-	  Xv_cmsdata	    *cms_data = (Xv_cmsdata *)avlist[0];
+	  Xv_cmsdata *cms_data = (Xv_cmsdata *)va_arg(args,Attr_attribute);
 	  
 	  cms_data->type = cms->type;
 	  cms_data->size = cms->size;