Changeset 14671

Show
Ignore:
Timestamp:
06/09/08 10:44:18 (6 months ago)
Author:
dron
Message:

More fixes for MrSID 7.x DSDK. See http://trac.osgeo.org/gdal/ticket/2410
for details.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/1.5/gdal/frmts/mrsid/mrsiddataset.cpp

    r14667 r14671  
    12621262    MrSIDDataset        *poDS; 
    12631263    const LTFileSpec    oFileSpec( poOpenInfo->pszFilename ); 
     1264    LT_STATUS           eStat; 
    12641265 
    12651266    poDS = new MrSIDDataset(); 
     
    12691270    else 
    12701271#endif 
     1272    { 
     1273#if defined(LTI_SDK_MAJOR) && LTI_SDK_MAJOR >= 7 
     1274        poDS->poImageReader = MrSIDImageReader::create(); 
     1275        eStat = poDS->poImageReader->initialize( oFileSpec, true ); 
     1276#else 
    12711277        poDS->poImageReader = new LTIDLLReader<MrSIDImageReader>( oFileSpec, false ); 
    1272  
    1273     if ( !LT_SUCCESS( poDS->poImageReader->initialize() ) ) 
     1278        eStat = poDS->poImageReader->initialize(); 
     1279#endif 
     1280    } 
     1281 
     1282 
     1283    if ( !LT_SUCCESS(eStat) ) 
    12741284    { 
    12751285        delete poDS; 
     
    12851295    poDS->poMetadata = new LTIDLLCopy<LTIMetadataDatabase>( 
    12861296        poDS->poImageReader->getMetadata() ); 
    1287 #if defined(LTI_SDK_MAJOR) && LTI_SDK_MAJOR >= 7 
    1288     { 
    1289         poDS->poImageReader = MrSIDImageReader::create(); 
    1290     } 
    1291  
    1292     eStat = poDS->poImageReader->initialize( &poDS->oStream, NULL ); 
    1293 #else 
    12941297    const GUInt32       iNumRecs = poDS->poMetadata->getIndexCount(); 
    12951298    GUInt32             i; 
     
    12981301    { 
    12991302        const LTIMetadataRecord *poMetadataRec = NULL; 
    1300 #endif 
    1301  
    13021303        if ( LT_SUCCESS(poDS->poMetadata->getDataByIndex(i, poMetadataRec)) ) 
    13031304        {