]> granicus.if.org Git - imagemagick/blobdiff - MagickCore/token.c
(no commit message)
[imagemagick] / MagickCore / token.c
index e84c5dc69278a84cc548fc7152fdfd3176467ca0..5d8b0bf6afe7fa3c39099fd872c9cafff07b1f79 100644 (file)
@@ -17,7 +17,7 @@
 %                              January 1993                                   %
 %                                                                             %
 %                                                                             %
-%  Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization      %
+%  Copyright 1999-2013 ImageMagick Studio LLC, a non-profit organization      %
 %  dedicated to making software imaging solutions freely available.           %
 %                                                                             %
 %  You may not use this file except in compliance with the License.  You may  %
@@ -249,7 +249,8 @@ MagickExport void GetMagickToken(const char *start,const char **end,char *token)
         for ( ; *p != '\0'; p++)
         {
           if (((isspace((int) ((unsigned char) *p)) != 0) || (*p == '=') ||
-              (*p == ',') || (*p == ':') || (*p == ';')) && (*(p-1) != '\\'))
+              (*p == ':') || (*p == ',') || (*p == '|') || (*p == ';')) &&
+              (*(p-1) != '\\'))
             break;
           if ((i > 0) && (*p == '<'))
             break;
@@ -593,16 +594,31 @@ MagickExport MagickBooleanType GlobExpression(const char *expression,
 MagickPrivate MagickBooleanType IsGlob(const char *path)
 {
   MagickBooleanType
-    status;
+    status = MagickFalse;
+
+  register const char
+    *p;
 
   if (IsPathAccessible(path) != MagickFalse)
     return(MagickFalse);
-  status=(strchr(path,'*') != (char *) NULL) ||
-    (strchr(path,'?') != (char *) NULL) ||
-    (strchr(path,'{') != (char *) NULL) ||
-    (strchr(path,'}') != (char *) NULL) ||
-    (strchr(path,'[') != (char *) NULL) ||
-    (strchr(path,']') != (char *) NULL) ? MagickTrue : MagickFalse;
+  for (p=path; *p != '\0'; p++)
+  {
+    switch (*p)
+    {
+      case '*':
+      case '?':
+      case '{':
+      case '}':
+      case '[':
+      case ']':
+      {
+        status=MagickTrue;
+        break;
+      }
+      default:
+        break;
+    }
+  }
   return(status);
 }
 \f