$NetBSD: patch-av,v 1.2 2001/12/20 09:19:56 tron Exp $

--- lib/libxview/color/cms_pblc.c.orig	Tue Jun 29 07:15:53 1993
+++ lib/libxview/color/cms_pblc.c	Thu Dec 20 10:10:18 2001
@@ -316,14 +316,13 @@
 {
     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 @@
 	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;
