load_dbm.cpp   load_dbm.cpp 
skipping to change at line 99 skipping to change at line 99
DWORD flags; DWORD flags;
DWORD samplesize; DWORD samplesize;
BYTE sampledata[2]; // [samplesize] BYTE sampledata[2]; // [samplesize]
} DBMSAMPLE; } DBMSAMPLE;
#pragma pack() #pragma pack()
BOOL CSoundFile::ReadDBM(const BYTE *lpStream, DWORD dwMemLength) BOOL CSoundFile::ReadDBM(const BYTE *lpStream, DWORD dwMemLength)
//--------------------------------------------------------------- //---------------------------------------------------------------
{ {
DBMFILEHEADER *pfh = (DBMFILEHEADER *)lpStream; const DBMFILEHEADER *pfh = (DBMFILEHEADER *)lpStream;
DWORD dwMemPos; DWORD dwMemPos;
UINT nOrders, nSamples, nInstruments, nPatterns; UINT nOrders, nSamples, nInstruments, nPatterns;
if ((!lpStream) || (dwMemLength <= sizeof(DBMFILEHEADER)) || (!pfh-> channels) if ((!lpStream) || (dwMemLength <= sizeof(DBMFILEHEADER)) || (!pfh-> channels)
|| (pfh->dbm_id != DBM_FILE_MAGIC) || (!pfh->songs) || (pfh->song_i d != DBM_ID_SONG) || (pfh->dbm_id != DBM_FILE_MAGIC) || (!pfh->songs) || (pfh->song_i d != DBM_ID_SONG)
|| (pfh->name_id != DBM_ID_NAME) || (pfh->name_len != DBM_NAMELEN) || (pfh->name_id != DBM_ID_NAME) || (pfh->name_len != DBM_NAMELEN)
|| (pfh->info_id != DBM_ID_INFO) || (pfh->info_len != DBM_INFOLEN)) return FALSE; || (pfh->info_id != DBM_ID_INFO) || (pfh->info_len != DBM_INFOLEN)) return FALSE;
dwMemPos = sizeof(DBMFILEHEADER); dwMemPos = sizeof(DBMFILEHEADER);
nOrders = bswapBE16(pfh->orders); nOrders = bswapBE16(pfh->orders);
if (dwMemPos + 2 * nOrders + 8*3 >= dwMemLength) return FALSE; if (dwMemPos + 2 * nOrders + 8*3 >= dwMemLength) return FALSE;
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/