]> git.saurik.com Git - wxWidgets.git/blobdiff - src/tiff/libtiff/tif_codec.c
Added control over whether size and position units can be changed, and also size...
[wxWidgets.git] / src / tiff / libtiff / tif_codec.c
index 94863d15e3a8fcff8d1f5aaa4832ebbed2394158..4a9abe346b838444a57fa58f356c0264670926a5 100644 (file)
  */
 #include "tiffiop.h"
 
-static int NotConfigured(TIFF*, int);
+static int NotConfigured(TIFF*, int);
 
-#ifndef        LZW_SUPPORT
-#define        TIFFInitLZW             NotConfigured
+#ifndef LZW_SUPPORT
+#define TIFFInitLZW NotConfigured
 #endif
-#ifndef        PACKBITS_SUPPORT
-#define        TIFFInitPackBits        NotConfigured
+#ifndef PACKBITS_SUPPORT
+#define TIFFInitPackBits NotConfigured
 #endif
-#ifndef        THUNDER_SUPPORT
-#define        TIFFInitThunderScan     NotConfigured
+#ifndef THUNDER_SUPPORT
+#define TIFFInitThunderScan NotConfigured
 #endif
-#ifndef        NEXT_SUPPORT
-#define        TIFFInitNeXT            NotConfigured
+#ifndef NEXT_SUPPORT
+#define TIFFInitNeXT NotConfigured
 #endif
-#ifndef        JPEG_SUPPORT
-#define        TIFFInitJPEG            NotConfigured
+#ifndef JPEG_SUPPORT
+#define TIFFInitJPEG NotConfigured
 #endif
-#ifndef        OJPEG_SUPPORT
-#define        TIFFInitOJPEG           NotConfigured
+#ifndef OJPEG_SUPPORT
+#define TIFFInitOJPEG NotConfigured
 #endif
-#ifndef        CCITT_SUPPORT
-#define        TIFFInitCCITTRLE        NotConfigured
-#define        TIFFInitCCITTRLEW       NotConfigured
-#define        TIFFInitCCITTFax3       NotConfigured
-#define        TIFFInitCCITTFax4       NotConfigured
+#ifndef CCITT_SUPPORT
+#define TIFFInitCCITTRLE NotConfigured
+#define TIFFInitCCITTRLEW NotConfigured
+#define TIFFInitCCITTFax3 NotConfigured
+#define TIFFInitCCITTFax4 NotConfigured
 #endif
 #ifndef JBIG_SUPPORT
-#define        TIFFInitJBIG            NotConfigured
+#define TIFFInitJBIG NotConfigured
 #endif
-#ifndef        ZIP_SUPPORT
-#define        TIFFInitZIP             NotConfigured
+#ifndef ZIP_SUPPORT
+#define TIFFInitZIP NotConfigured
 #endif
-#ifndef        PIXARLOG_SUPPORT
-#define        TIFFInitPixarLog        NotConfigured
+#ifndef PIXARLOG_SUPPORT
+#define TIFFInitPixarLog NotConfigured
 #endif
 #ifndef LOGLUV_SUPPORT
-#define TIFFInitSGILog         NotConfigured
+#define TIFFInitSGILog NotConfigured
+#endif
+#ifndef LZMA_SUPPORT
+#define TIFFInitLZMA NotConfigured
 #endif
 
 /*
@@ -95,6 +98,7 @@ TIFFCodec _TIFFBuiltinCODECS[] = {
     { "PixarLog",      COMPRESSION_PIXARLOG,   TIFFInitPixarLog },
     { "SGILog",                COMPRESSION_SGILOG,     TIFFInitSGILog },
     { "SGILog24",      COMPRESSION_SGILOG24,   TIFFInitSGILog },
+    { "LZMA",          COMPRESSION_LZMA,       TIFFInitLZMA },
     { NULL,             0,                      NULL }
 };
 
@@ -102,22 +106,26 @@ static int
 _notConfigured(TIFF* tif)
 {
        const TIFFCodec* c = TIFFFindCODEC(tif->tif_dir.td_compression);
-
+        char compression_code[20];
+        
+        sprintf( compression_code, "%d", tif->tif_dir.td_compression );
        TIFFErrorExt(tif->tif_clientdata, tif->tif_name,
-           "%s compression support is not configured", c->name);
+                     "%s compression support is not configured", 
+                     c ? c->name : compression_code );
        return (0);
 }
 
 static int
 NotConfigured(TIFF* tif, int scheme)
 {
-    (void) scheme;
-    
-    tif->tif_decodestatus = FALSE;
-    tif->tif_setupdecode = _notConfigured;
-    tif->tif_encodestatus = FALSE;
-    tif->tif_setupencode = _notConfigured;
-    return (1);
+       (void) scheme;
+
+       tif->tif_fixuptags = _notConfigured;
+       tif->tif_decodestatus = FALSE;
+       tif->tif_setupdecode = _notConfigured;
+       tif->tif_encodestatus = FALSE;
+       tif->tif_setupencode = _notConfigured;
+       return (1);
 }
 
 /************************************************************************/
@@ -126,7 +134,7 @@ NotConfigured(TIFF* tif, int scheme)
 
 /**
  * Check whether we have working codec for the specific coding scheme.
- * 
+ *
  * @return returns 1 if the codec is configured and working. Otherwise
  * 0 will be returned.
  */
@@ -137,14 +145,21 @@ TIFFIsCODECConfigured(uint16 scheme)
        const TIFFCodec* codec = TIFFFindCODEC(scheme);
 
        if(codec == NULL) {
-            return 0;
-        }
-        if(codec->init == NULL) {
-            return 0;
-        }
+               return 0;
+       }
+       if(codec->init == NULL) {
+               return 0;
+       }
        if(codec->init != NotConfigured){
-            return 1;
-        }
+               return 1;
+       }
        return 0;
 }
 
+/*
+ * Local Variables:
+ * mode: c
+ * c-basic-offset: 8
+ * fill-column: 78
+ * End:
+ */