--- src/gdevmd2k.c.orig	2005-01-22 05:57:05.524243184 +0100
+++ src/gdevmd2k.c	2005-01-22 06:02:30.777797128 +0100
@@ -639,11 +639,12 @@
 
 private gx_color_index
 alps_map_cmyk_color(gx_device* pdev,
-		    gx_color_value c, gx_color_value m,
-		    gx_color_value y, gx_color_value k)
+		    const gx_color_value cv[])
 {
     gx_color_index color;
+    gx_color_value c, m, y, k;
 
+    c = cv[0]; m = cv[1]; y = cv[2]; k = cv[3];
     switch (pdev->color_info.depth) {
     case 1:
 	color = ((c | m | y | k) > gx_max_color_value / 2 ?
@@ -676,10 +677,12 @@
 
 private gx_color_index
 alps_map_cmy_color(gx_device* pdev,
-		   gx_color_value c, gx_color_value m,
-		   gx_color_value y, gx_color_value k)
+		   const gx_color_value cv[])
 {
     int nbits = pdev->color_info.depth;
+    gx_color_value c, m, y, k;
+
+    c = cv[0]; m = cv[1]; y = cv[2]; k = cv[3];
     ulong weight = ((gx_max_color_value - k) << 10) / gx_max_color_value;
     c = ((c * weight) >> 10) + k;
     m = ((m * weight) >> 10) + k;
@@ -695,9 +698,11 @@
 
 private gx_color_index
 alps_map_rgb_color(gx_device *pdev,
-		   gx_color_value r, gx_color_value g, gx_color_value b)
+		   const gx_color_value cv[])
 {
+  gx_color_value r, g, b;
 
+  r = cv[0]; g = cv[1]; b = cv[2];
   if (gx_color_value_to_byte(r & g & b) == 0xff) {
       return (gx_color_index) 0;	/* White */
   } else {
