--- psiconv/trunk/program/psiconv/magick-aux.c 2005/02/25 18:34:18 254 +++ psiconv/trunk/program/psiconv/magick-aux.c 2005/02/25 20:36:25 255 @@ -33,6 +33,7 @@ /* This used to be very ugly, but nowadays it is much better */ +#if IMAGEMAGICK_API == 1 || IMAGEMAGICK_API == 2 const MagickInfo * GetMagickFileList(void) { ExceptionInfo exc; @@ -41,4 +42,39 @@ return GetMagickInfo(NULL,&exc); } +#elif IMAGEMAGICK_API == 3 + +const MagickInfo * GetMagickFileList(void) +{ + MagickInfo **mi; + unsigned long nr; + int i; + ExceptionInfo exc; + GetExceptionInfo(&exc); + OpenModules(&exc); + mi = GetMagickInfoList("*",&nr); + for (i = 0; i < nr-1; i++) { + mi[i]->next = mi[i+1]; + } + return *mi; +} + +#elif IMAGEMAGICK_API == 4 + +const MagickInfo * GetMagickFileList(void) +{ + MagickInfo **mi; + unsigned long nr; + int i; + ExceptionInfo exc; + GetExceptionInfo(&exc); + OpenModules(&exc); + mi = GetMagickInfoList("*",&nr,&exc); + for (i = 0; i < nr-1; i++) { + mi[i]->next = mi[i+1]; + } + return *mi; +} +#endif + #endif /* IMAGEMAGICK */