diff --git a/src/FileRead.cpp b/src/FileRead.cpp index 4053b26..1bddd82 100644 --- a/src/FileRead.cpp +++ b/src/FileRead.cpp @@ -447,12 +447,6 @@ bool FileRead :: getAifInfo( const char *fileName ) byteswap_ = true; #endif - if ( fread(&id, 4, 1, fd_) != 1 ) goto error; - if ( !strncmp(id, "sowt", 4) ) { // uncompressed little-endian - if ( byteswap_ == false ) byteswap_ = true; - else byteswap_ = false; - } - // Determine the data format. dataType_ = 0; if ( aifc == false ) { @@ -462,6 +456,11 @@ bool FileRead :: getAifInfo( const char *fileName ) else if ( temp <= 32 ) dataType_ = STK_SINT32; } else { + if ( fread(&id, 4, 1, fd_) != 1 ) goto error; + if ( !strncmp(id, "sowt", 4) ) { // uncompressed little-endian + if ( byteswap_ == false ) byteswap_ = true; + else byteswap_ = false; + } if ( !strncmp(id, "NONE", 4) || !strncmp(id, "sowt", 4) ) { if ( temp <= 8 ) dataType_ = STK_SINT8; else if ( temp <= 16 ) dataType_ = STK_SINT16;