]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Fri, 9 Aug 2013 01:29:35 +0000 (01:29 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Fri, 9 Aug 2013 01:29:35 +0000 (01:29 +0000)
MagickCore/identify.c
MagickCore/magick.c
MagickCore/magick.h
coders/jpeg.c

index ce1c7b5617a0f98a1c1974fe9a4f46fd67b7dc4e..f2ee34628a6ea6257b558e43d2852921d80a9bde 100644 (file)
@@ -381,11 +381,15 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file,
       }
   magick_info=GetMagickInfo(image->magick,exception);
   if ((magick_info == (const MagickInfo *) NULL) ||
-      (*GetMagickDescription(magick_info) == '\0'))
+      (GetMagickDescription(magick_info) == (const char *) NULL))
     (void) FormatLocaleFile(file,"  Format: %s\n",image->magick);
   else
     (void) FormatLocaleFile(file,"  Format: %s (%s)\n",image->magick,
       GetMagickDescription(magick_info));
+  if ((magick_info == (const MagickInfo *) NULL) ||
+      (GetMagickMimeType(magick_info) != (const char *) NULL))
+    (void) FormatLocaleFile(file,"  Mime type: %s\n",GetMagickMimeType(
+      magick_info);
   (void) FormatLocaleFile(file,"  Class: %s\n",CommandOptionToMnemonic(
     MagickClassOptions,(ssize_t) image->storage_class));
   (void) FormatLocaleFile(file,"  Geometry: %.20gx%.20g%+.20g%+.20g\n",(double)
index 3a24e6055cd1b6a92e4563394440d38635f9ac3c..72246fd7d9d6475b616d98d70387be70b39e8213 100644 (file)
@@ -649,6 +649,36 @@ MagickExport char **GetMagickList(const char *pattern,
 %                                                                             %
 %                                                                             %
 %                                                                             %
++   G e t M a g i c k M i m e T y p e                                         %
+%                                                                             %
+%                                                                             %
+%                                                                             %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  GetMagickMimeType() returns the magick mime type.
+%
+%  The format of the GetMagickMimeType method is:
+%
+%      const char *GetMagickMimeType(const MagickInfo *magick_info)
+%
+%  A description of each parameter follows:
+%
+%    o magick_info:  The magick info.
+%
+*/
+MagickExport const char *GetMagickMimeType(const MagickInfo *magick_info)
+{
+  (void) LogMagickEvent(TraceEvent,GetMagickModule(),"...");
+  assert(magick_info != (MagickInfo *) NULL);
+  assert(magick_info->signature == MagickSignature);
+  return(magick_info->mime_type);
+}
+\f
+/*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                                                             %
+%                                                                             %
+%                                                                             %
 %   G e t M a g i c k P r e c i s i o n                                       %
 %                                                                             %
 %                                                                             %
@@ -792,16 +822,18 @@ static void *DestroyMagickNode(void *magick_info)
     *p;
 
   p=(MagickInfo *) magick_info;
-  if (p->name != (char *) NULL)
-    p->name=DestroyString(p->name);
-  if (p->description != (char *) NULL)
-    p->description=DestroyString(p->description);
-  if (p->version != (char *) NULL)
-    p->version=DestroyString(p->version);
-  if (p->note != (char *) NULL)
-    p->note=DestroyString(p->note);
   if (p->module != (char *) NULL)
     p->module=DestroyString(p->module);
+  if (p->note != (char *) NULL)
+    p->note=DestroyString(p->note);
+  if (p->mime_type != (char *) NULL)
+    p->mime_type=DestroyString(p->mime_type);
+  if (p->version != (char *) NULL)
+    p->version=DestroyString(p->version);
+  if (p->description != (char *) NULL)
+    p->description=DestroyString(p->description);
+  if (p->name != (char *) NULL)
+    p->name=DestroyString(p->name);
   return(RelinquishMagickMemory(p));
 }
 
index dd6df5549d30abfa4ac62a5ad1fe121ed5d306e1..cc89fd217f71af04c592bf717b2c128841c3bd69 100644 (file)
@@ -51,6 +51,7 @@ typedef struct _MagickInfo
     *name,
     *description,
     *version,
+    *mime_type,
     *note,
     *module;
 
@@ -93,7 +94,8 @@ extern MagickExport char
   **GetMagickList(const char *,size_t *,ExceptionInfo *);
 
 extern MagickExport const char
-  *GetMagickDescription(const MagickInfo *);
+  *GetMagickDescription(const MagickInfo *),
+  *GetMagickMimeType(const MagickInfo *);
 
 extern MagickExport DecodeImageHandler
   *GetImageDecoder(const MagickInfo *);
index a9c61be483e26521f809a42f277719af61e8c3a6..d0314aea4cbe09e6e47952cb369e73d08d5c4163 100644 (file)
@@ -1491,6 +1491,7 @@ ModuleExport size_t RegisterJPEGImage(void)
   entry->description=ConstantString(description);
   if (*version != '\0')
     entry->version=ConstantString(version);
+  entry->mime_type=ConstantString("image/jpeg");
   entry->module=ConstantString("JPEG");
   (void) RegisterMagickInfo(entry);
   entry=SetMagickInfo("JPG");
@@ -1503,6 +1504,7 @@ ModuleExport size_t RegisterJPEGImage(void)
   entry->description=ConstantString(description);
   if (*version != '\0')
     entry->version=ConstantString(version);
+  entry->mime_type=ConstantString("image/jpeg");
   entry->module=ConstantString("JPEG");
   (void) RegisterMagickInfo(entry);
   entry=SetMagickInfo("PJPEG");
@@ -1515,6 +1517,7 @@ ModuleExport size_t RegisterJPEGImage(void)
   entry->description=ConstantString(description);
   if (*version != '\0')
     entry->version=ConstantString(version);
+  entry->mime_type=ConstantString("image/jpeg");
   entry->module=ConstantString("JPEG");
   (void) RegisterMagickInfo(entry);
   return(MagickImageCoderSignature);