diff options
author | Chris Reuter <chris@blit.ca> | 2014-02-07 13:12:55 -0500 |
---|---|---|
committer | Chris Reuter <chris@blit.ca> | 2014-02-07 14:17:17 -0500 |
commit | 0cb34fdb317afaf7034c836cbf6924740c42bffb (patch) | |
tree | 6e73a13dfea8ffa6433e12811535155dda26fa0a /src/gd_filename.c | |
parent | 74ad18cc54f1841d18e9ffc54dbcc69c637803f7 (diff) | |
download | libgd-0cb34fdb317afaf7034c836cbf6924740c42bffb.tar.gz |
Got gd_filename.c to work correctly under Windows.
Specified calling convention on function pointers. (This matters
under Windows).
Switched from rindex() to strrchr() (oops!).
Tidied the formatting a bit.
Diffstat (limited to 'src/gd_filename.c')
-rw-r--r-- | src/gd_filename.c | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/src/gd_filename.c b/src/gd_filename.c index 068c4ad..ba636cf 100644 --- a/src/gd_filename.c +++ b/src/gd_filename.c @@ -10,29 +10,29 @@ #include "gd.h" -typedef gdImagePtr (*ReadFn)(FILE *in); -typedef void (*WriteFn)(gdImagePtr im, FILE *out); -typedef gdImagePtr (*LoadFn)(char *filename); +typedef gdImagePtr (BGD_STDCALL *ReadFn)(FILE *in); +typedef void (BGD_STDCALL *WriteFn)(gdImagePtr im, FILE *out); +typedef gdImagePtr (BGD_STDCALL *LoadFn)(char *filename); #ifdef HAVE_LIBZ -static void writegd2(gdImagePtr im, FILE *out) { +static void BGD_STDCALL writegd2(gdImagePtr im, FILE *out) { gdImageGd2(im, out, 0, GD2_FMT_COMPRESSED); }/* writegd*/ #endif #ifdef HAVE_LIBJPEG -static void writejpeg(gdImagePtr im, FILE *out) { +static void BGD_STDCALL writejpeg(gdImagePtr im, FILE *out) { gdImageJpeg(im, out, -1); }/* writejpeg*/ #endif -static void writewbmp(gdImagePtr im, FILE *out) { +static void BGD_STDCALL writewbmp(gdImagePtr im, FILE *out) { int fg = gdImageColorClosest(im, 0, 0, 0); gdImageWBMP(im, fg, out); }/* writejpeg*/ -static void writebmp(gdImagePtr im, FILE *out) { +static void BGD_STDCALL writebmp(gdImagePtr im, FILE *out) { gdImageBmp(im, out, GD_TRUE); }/* writejpeg*/ @@ -44,38 +44,38 @@ static struct FileType { WriteFn writer; LoadFn loader; } Types[] = { - {".gif", gdImageCreateFromGif, gdImageGif, NULL}, - {".gd", gdImageCreateFromGd, gdImageGd, NULL}, - {".wbmp", gdImageCreateFromWBMP, writewbmp, NULL}, - {".bmp", gdImageCreateFromBmp, writebmp, NULL}, + {".gif", gdImageCreateFromGif, gdImageGif, NULL}, + {".gd", gdImageCreateFromGd, gdImageGd, NULL}, + {".wbmp", gdImageCreateFromWBMP, writewbmp, NULL}, + {".bmp", gdImageCreateFromBmp, writebmp, NULL}, - {".xbm", gdImageCreateFromXbm, NULL, NULL}, - {".tga", gdImageCreateFromTga, NULL, NULL}, + {".xbm", gdImageCreateFromXbm, NULL, NULL}, + {".tga", gdImageCreateFromTga, NULL, NULL}, #ifdef HAVE_LIBPNG - {".png", gdImageCreateFromPng, gdImagePng, NULL}, + {".png", gdImageCreateFromPng, gdImagePng, NULL}, #endif #ifdef HAVE_LIBJPEG - {".jpg", gdImageCreateFromJpeg, writejpeg, NULL}, - {".jpeg", gdImageCreateFromJpeg, writejpeg, NULL}, + {".jpg", gdImageCreateFromJpeg, writejpeg, NULL}, + {".jpeg", gdImageCreateFromJpeg, writejpeg, NULL}, #endif #ifdef HAVE_LIBTIFF - {".tiff", gdImageCreateFromTiff, gdImageTiff, NULL}, - {".tif" , gdImageCreateFromTiff, gdImageTiff, NULL}, + {".tiff", gdImageCreateFromTiff, gdImageTiff, NULL}, + {".tif" , gdImageCreateFromTiff, gdImageTiff, NULL}, #endif #ifdef HAVE_LIBZ - {".gd2", gdImageCreateFromGd2, writegd2, NULL}, + {".gd2", gdImageCreateFromGd2, writegd2, NULL}, #endif #ifdef HAVE_LIBVPX - {".webp", gdImageCreateFromWebp, gdImageWebp, NULL}, + {".webp", gdImageCreateFromWebp, gdImageWebp, NULL}, #endif #ifdef HAVE_LIBXPM - {".xpm", NULL, NULL, gdImageCreateFromXpm}, + {".xpm", NULL, NULL, gdImageCreateFromXpm}, #endif {NULL, NULL, NULL} @@ -88,7 +88,7 @@ ftype(const char *filename) { char *ext; /* Find the file extension (i.e. the last period in the string. */ - ext = rindex(filename, '.'); + ext = strrchr(filename, '.'); if (!ext) return NULL; for (n = 0; Types[n].ext; n++) { @@ -149,7 +149,7 @@ BGD_DECLARE(int) gdSupportsFileType(const char *filename, int writing) { struct FileType *entry = ftype(filename); return !!entry && (!writing || !!entry->writer); -}/* gdSupportsFiletype*/ +}/* gdSupportsFileType*/ /* |