From 7f6d54b7b8b261053aedc47ecdac05a61bed0e05 Mon Sep 17 00:00:00 2001
From: Emmanuel Christophe <emmanuel.christophe@orfeo-toolbox.org>
Date: Fri, 24 Apr 2009 23:23:29 +0800
Subject: [PATCH] BUG: fix segfault in ossim (due to Ikonos)

---
 .../ossim/projection/ossimIkonosRpcModel.cpp  | 24 ++++++++++---------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/Utilities/otbossim/src/ossim/projection/ossimIkonosRpcModel.cpp b/Utilities/otbossim/src/ossim/projection/ossimIkonosRpcModel.cpp
index 65918bc0a1..9b3693987f 100644
--- a/Utilities/otbossim/src/ossim/projection/ossimIkonosRpcModel.cpp
+++ b/Utilities/otbossim/src/ossim/projection/ossimIkonosRpcModel.cpp
@@ -898,22 +898,24 @@ bool ossimIkonosRpcModel::parseTiffFile(const ossimFilename& filename)
      ossimNotify(ossimNotifyLevel_DEBUG)
          << "DEBUG ossimIkonosRpcModel parseTiffFile: Ikonos filename non standard" << std::endl;
    }
-   ossimFilename metadatafile = filenameparts[0];
-   metadatafile += "_";
-   metadatafile += filenameparts[1];
-   metadatafile += "_metadata.txt";
+   else
+   {
+     ossimFilename metadatafile = filenameparts[0];
+     metadatafile += "_";
+     metadatafile += filenameparts[1];
+     metadatafile += "_metadata.txt";
 
-   metadatafile.setPath(filename.path());
+     metadatafile.setPath(filename.path());
 
-   parseMetaData (metadatafile);
-   if (getErrorStatus()) //check for errors in parsing metadata file
-   {
-     ossimNotify(ossimNotifyLevel_DEBUG)
+     parseMetaData (metadatafile);
+     if (getErrorStatus()) //check for errors in parsing metadata file
+     {
+       ossimNotify(ossimNotifyLevel_DEBUG)
          << "DEBUG ossimIkonosRpcModel parseTiffFile: errors parsing metadata" << std::endl;
-     //failed to read metadata, but don't abord here.
+       //failed to read metadata, but don't abord here.
+     }
    }
 
-
    //convert file to rpc filename and hdr filename so we can get some info
 
 
-- 
GitLab