]> granicus.if.org Git - imagemagick/commitdiff
Only use the module name for the encoder list and added list for a few exceptions.
authorDirk Lemstra <dirk@git.imagemagick.org>
Thu, 18 Jan 2018 20:57:03 +0000 (21:57 +0100)
committerDirk Lemstra <dirk@git.imagemagick.org>
Thu, 18 Jan 2018 20:57:03 +0000 (21:57 +0100)
Magick++/fuzz/encoder_list.cc

index de58f997cbaac32851643f61141bc8064e88288d..517a8dbd95af9b0322cc1929c6bf2ec69cd1244c 100644 (file)
@@ -1,5 +1,6 @@
 #include <iostream>
 #include <list>
+#include <algorithm>
 
 #include <Magick++/Image.h>
 #include <Magick++/STL.h>
@@ -8,8 +9,35 @@ int main() {
   std::list<Magick::CoderInfo> coderList;
   coderInfoList(&coderList, Magick::CoderInfo::TrueMatch, Magick::CoderInfo::AnyMatch, Magick::CoderInfo::AnyMatch);
 
+  std::list<std::string> allowedNames;
+  allowedNames.push_back("BGR");
+  allowedNames.push_back("BMP");
+  allowedNames.push_back("CMYK");
+  allowedNames.push_back("DDS");
+  allowedNames.push_back("EPT");
+  allowedNames.push_back("FAX");
+  allowedNames.push_back("GRADIENT");
+  allowedNames.push_back("HTML");
+  allowedNames.push_back("JP2");
+  allowedNames.push_back("JPEG");
+  allowedNames.push_back("PCD");
+  allowedNames.push_back("PCD");
+  allowedNames.push_back("PDF");
+  allowedNames.push_back("PNG");
+  allowedNames.push_back("PS");
+  allowedNames.push_back("PS2");
+  allowedNames.push_back("PS3");
+  allowedNames.push_back("RGB");
+  allowedNames.push_back("SVG");
+  allowedNames.push_back("TIFF");
+  allowedNames.push_back("TXT");
+  allowedNames.push_back("YCBCR");
+
   for (std::list<Magick::CoderInfo>::iterator it = coderList.begin(); it != coderList.end(); it++)
   {
-    std::cout << ((*it).isWritable() ? "+" : "-") << (*it).name() << std::endl;
+    if ((*it).name() == (*it).module())
+      std::cout << ((*it).isWritable() ? "+" : "-") << (*it).module() << std::endl;
+    else if (std::find(allowedNames.begin(), allowedNames.end(), (*it).module()) != allowedNames.end())
+      std::cout << ((*it).isWritable() ? "+" : "-") << (*it).name() << std::endl;
   }
 }