]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Mon, 1 Nov 2010 23:29:42 +0000 (23:29 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Mon, 1 Nov 2010 23:29:42 +0000 (23:29 +0000)
ChangeLog
coders/xpm.c

index 925cb660d56f89322580e4c8d07f04d674533bea..0fa31df94c6e09ed2f85a9017ca11698a9a7561b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,8 @@
 2010-10-30  6.6.5-5 Cristy  <quetzlzacatenango@image...>
   * Do not read configure files in the current directory for the "installed"
     version of ImageMagick.
+  * Allow numeric characters in the XPM basename (reference
+    http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=17385).
 
 2010-10-29  6.6.5-4 Glenn Randers-Pehrson <glennrp@image...>
   * Revised PNG palette optimization
index a5eed36e39421752b1cee8c27cbe7054d05957c1..c95f475b03ece04b27381bcc272746e4f556c9d7 100644 (file)
@@ -139,11 +139,11 @@ static MagickBooleanType IsXPM(const unsigned char *magick,const size_t length)
 */
 
 static int CompareXPMColor(const void *target,const void *source)
-{ 
+{
   const char
     *p,
     *q;
-  
   p=(const char *) target;
   q=(const char *) source;
   return(strcmp(p,q));
@@ -968,8 +968,10 @@ static MagickBooleanType WriteXPMImage(const ImageInfo *image_info,Image *image)
       (void) FormatMagickString(buffer,MaxTextExtent,"xpm_%s",basename);
       (void) CopyMagickString(basename,buffer,MaxTextExtent);
     }
-  for (i=0; basename[i] != '\0'; i++)
-    if (isalpha((int) ((unsigned char) basename[i])) == 0)
+  if (isalpha((int) ((unsigned char) basename[0])) == 0)
+    basename[0]='_';
+  for (i=1; basename[i] != '\0'; i++)
+    if (isalnum((int) ((unsigned char) basename[i])) == 0)
       basename[i]='_';
   (void) FormatMagickString(buffer,MaxTextExtent,
     "static char *%s[] = {\n",basename);