Author: post
Date: 2012-07-10 00:38:19 +0200 (Tue, 10 Jul 2012)
New Revision: 434

Modified:
   RawSpeed/ArwDecoder.cpp
   RawSpeed/Cr2Decoder.cpp
   RawSpeed/LJpegPlain.cpp
   RawSpeed/NefDecoder.cpp
   RawSpeed/OrfDecoder.cpp
   RawSpeed/PefDecoder.cpp
   RawSpeed/Rw2Decoder.cpp
   RawSpeed/SrwDecoder.cpp
Log:
Check that MAKE tag is in same IFD as MODEL, avoids TiffParserException, which 
is not expected to be caught.

Modified: RawSpeed/ArwDecoder.cpp
===================================================================
--- RawSpeed/ArwDecoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/ArwDecoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -190,6 +190,8 @@
 
   if (data.empty())
     ThrowRDE("ARW Meta Decoder: Model name found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("ARW Decoder: Make name not found");
 
   string make = data[0]->getEntry(MAKE)->getString();
   string model = data[0]->getEntry(MODEL)->getString();

Modified: RawSpeed/Cr2Decoder.cpp
===================================================================
--- RawSpeed/Cr2Decoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/Cr2Decoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -108,7 +108,7 @@
 
   if (s_width.size() > 15)
     ThrowRDE("CR2 Decoder: No more than 15 slices supported");
-  
+  _RPT1(0,"Org slices:%d\n", s_width.size());
   for (uint32 i = 0; i < slices.size(); i++) {
     Cr2Slice slice = slices[i];
     try {
@@ -138,6 +138,8 @@
   vector<TiffIFD*> data = mRootIFD->getIFDsWithTag(MODEL);
   if (data.empty())
     ThrowRDE("CR2 Support check: Model name found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("CR2 Support: Make name not found");
   string make = data[0]->getEntry(MAKE)->getString();
   string model = data[0]->getEntry(MODEL)->getString();
   this->checkCameraSupported(meta, make, model, "");

Modified: RawSpeed/LJpegPlain.cpp
===================================================================
--- RawSpeed/LJpegPlain.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/LJpegPlain.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -46,6 +46,9 @@
   if (frame.h + offY > (uint32)mRaw->dim.y)
     skipY = frame.h + offY - mRaw->dim.y;
 
+  _RPT1(0,"SlicesW:0x%x,\n",&slicesW);
+  _RPT1(0,"Slices:%d\n",slicesW.size());
+
   if (slicesW.empty())
     slicesW.push_back(frame.w*frame.cps);
 

Modified: RawSpeed/NefDecoder.cpp
===================================================================
--- RawSpeed/NefDecoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/NefDecoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -346,6 +346,8 @@
 
   if (data.empty())
     ThrowRDE("NEF Meta Decoder: Model name found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("NEF Support: Make name not found");
 
   int white = mRaw->whitePoint;
   int black = mRaw->blackLevel;

Modified: RawSpeed/OrfDecoder.cpp
===================================================================
--- RawSpeed/OrfDecoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/OrfDecoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -249,6 +249,8 @@
   vector<TiffIFD*> data = mRootIFD->getIFDsWithTag(MODEL);
   if (data.empty())
     ThrowRDE("ORF Support check: Model name found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("ORF Support: Make name not found");
   string make = data[0]->getEntry(MAKE)->getString();
   string model = data[0]->getEntry(MODEL)->getString();
   this->checkCameraSupported(meta, make, model, "");

Modified: RawSpeed/PefDecoder.cpp
===================================================================
--- RawSpeed/PefDecoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/PefDecoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -85,6 +85,8 @@
   vector<TiffIFD*> data = mRootIFD->getIFDsWithTag(MODEL);
   if (data.empty())
     ThrowRDE("PEF Support check: Model name found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("PEF Support: Make name not found");
 
   string make = data[0]->getEntry(MAKE)->getString();
   string model = data[0]->getEntry(MODEL)->getString();

Modified: RawSpeed/Rw2Decoder.cpp
===================================================================
--- RawSpeed/Rw2Decoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/Rw2Decoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -180,7 +180,9 @@
   vector<TiffIFD*> data = mRootIFD->getIFDsWithTag(MODEL);
 
   if (data.empty())
-    ThrowRDE("CR2 Meta Decoder: Model name not found");
+    ThrowRDE("RW2 Meta Decoder: Model name not found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("RW2 Support: Make name not found");
 
   string make = data[0]->getEntry(MAKE)->getString();
   string model = data[0]->getEntry(MODEL)->getString();

Modified: RawSpeed/SrwDecoder.cpp
===================================================================
--- RawSpeed/SrwDecoder.cpp     2012-07-09 21:02:50 UTC (rev 433)
+++ RawSpeed/SrwDecoder.cpp     2012-07-09 22:38:19 UTC (rev 434)
@@ -80,6 +80,8 @@
   vector<TiffIFD*> data = mRootIFD->getIFDsWithTag(MODEL);
   if (data.empty())
     ThrowRDE("Srw Support check: Model name found");
+  if (!data[0]->hasEntry(MAKE))
+    ThrowRDE("SRW Support: Make name not found");
   string make = data[0]->getEntry(MAKE)->getString();
   string model = data[0]->getEntry(MODEL)->getString();
   this->checkCameraSupported(meta, make, model, "");


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to