$OpenBSD: patch-babl_babl-fish-path_c,v 1.1 2020/02/18 18:11:32 gkoehler Exp $

Pass a function pointer, not a union of function pointers, when
calling babl_conversion_new().  This is necessary on powerpc, where
the calling convention was passing the union as a pointer to a
temporary copy of the union.  The compiler doesn't check the type,
because babl_conversion_new() has a va_arg(3) prototype.

This fixes the chromaticities test on powerpc,
https://gitlab.gnome.org/GNOME/babl/issues/24

Index: babl/babl-fish-path.c
--- babl/babl-fish-path.c.orig
+++ babl/babl-fish-path.c
@@ -404,7 +404,7 @@ alias_conversion (Babl *babl,
                     (void*)conv->source, (void*)space),
               babl_remodel_with_space (
                     (void*)conv->destination, (void*)space),
-              "linear", conv->function,
+              "linear", conv->function.linear,
               NULL);
         break;
       case BABL_CONVERSION_PLANAR:
@@ -413,7 +413,7 @@ alias_conversion (Babl *babl,
                     (void*)conv->source, (void*)space),
               babl_remodel_with_space (
                     (void*)conv->destination, (void*)space),
-              "planar", conv->function,
+              "planar", conv->function.planar,
               NULL);
         break;
       case BABL_CONVERSION_PLANE:
@@ -422,7 +422,7 @@ alias_conversion (Babl *babl,
                     (void*)conv->source, (void*)space),
               babl_remodel_with_space (
                     (void*)conv->destination, (void*)space),
-              "plane", conv->function,
+              "plane", conv->function.plane,
               NULL);
         break;
       default:
