OGRDataSource *OGRNASDriver::Open( const char * pszFilename, int bUpdate ) { OGRNASDataSource *poDS; if( bUpdate ) return NULL; poDS = new OGRNASDataSource(); if( !poDS->Open( pszFilename, TRUE ) || poDS->GetLayerCount() == 0 ) { delete poDS; return NULL; } else return poDS; }
static GDALDataset *OGRNASDriverOpen( GDALOpenInfo* poOpenInfo ) { OGRNASDataSource *poDS; if( poOpenInfo->eAccess == GA_Update || !OGRNASDriverIdentify(poOpenInfo) ) return NULL; VSIFCloseL(poOpenInfo->fpL); poOpenInfo->fpL = NULL; poDS = new OGRNASDataSource(); if( !poDS->Open( poOpenInfo->pszFilename ) || poDS->GetLayerCount() == 0 ) { delete poDS; return NULL; } else return poDS; }