--- np2/sound/getsnd/getwave.c 2004/01/08 17:52:47 1.3 +++ np2/sound/getsnd/getwave.c 2004/01/08 18:03:39 1.4 @@ -244,15 +244,13 @@ static BOOL msa_open(GETSND snd, WAVE_IN __COEFPAIR *coef; BYTE *p; - if (snd->bit != 4) { + if ((snd->bit != 4) || + (headsize < (sizeof(WAVE_INFOS) + sizeof(WAVE_MSA_INFO)))) { goto msaopn_err; } info = (WAVE_MSA_INFO *)(wavehead + 1); headsize -= sizeof(WAVE_INFOS); headsize -= sizeof(WAVE_MSA_INFO); - if ((signed long)headsize < 0) { - goto msaopn_err; - } exsize = LOADINTELWORD(info->exsize); spb = LOADINTELWORD(info->spb); numcoef = LOADINTELWORD(info->numcoef); @@ -342,7 +340,7 @@ static UINT ima_dec(GETSND snd, SINT16 * UINT c; SINT32 val[2]; - itn state[2]; + int state[2]; BYTE *src; UINT blk;