head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.54 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.52 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.50 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.48 pkgsrc-2011Q2-base:1.2 pkgsrc-2009Q4:1.2.0.46 pkgsrc-2009Q4-base:1.2 pkgsrc-2008Q4:1.2.0.44 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.2.0.42 pkgsrc-2008Q3-base:1.2 cube-native-xorg:1.2.0.40 cube-native-xorg-base:1.2 pkgsrc-2008Q2:1.2.0.38 pkgsrc-2008Q2-base:1.2 pkgsrc-2008Q1:1.2.0.36 pkgsrc-2008Q1-base:1.2 pkgsrc-2007Q4:1.2.0.34 pkgsrc-2007Q4-base:1.2 pkgsrc-2007Q3:1.2.0.32 pkgsrc-2007Q3-base:1.2 pkgsrc-2007Q2:1.2.0.30 pkgsrc-2007Q2-base:1.2 pkgsrc-2007Q1:1.2.0.28 pkgsrc-2007Q1-base:1.2 pkgsrc-2006Q4:1.2.0.26 pkgsrc-2006Q4-base:1.2 pkgsrc-2006Q3:1.2.0.24 pkgsrc-2006Q3-base:1.2 pkgsrc-2006Q2:1.2.0.22 pkgsrc-2006Q2-base:1.2 pkgsrc-2006Q1:1.2.0.20 pkgsrc-2006Q1-base:1.2 pkgsrc-2005Q4:1.2.0.18 pkgsrc-2005Q4-base:1.2 pkgsrc-2005Q3:1.2.0.16 pkgsrc-2005Q3-base:1.2 pkgsrc-2005Q2:1.2.0.14 pkgsrc-2005Q2-base:1.2 pkgsrc-2005Q1:1.2.0.12 pkgsrc-2005Q1-base:1.2 pkgsrc-2004Q4:1.2.0.10 pkgsrc-2004Q4-base:1.2 pkgsrc-2004Q3:1.2.0.8 pkgsrc-2004Q3-base:1.2 pkgsrc-2004Q2:1.2.0.6 pkgsrc-2004Q2-base:1.2 pkgsrc-2004Q1:1.2.0.4 pkgsrc-2004Q1-base:1.2 pkgsrc-2003Q4:1.2.0.2 pkgsrc-2003Q4-base:1.2 buildlink2-base:1.2 netbsd-1-3-PATCH002:1.1; locks; strict; comment @# @; 1.2 date 98.07.04.07.50.10; author mycroft; state dead; branches; next 1.1; 1.1 date 98.03.11.16.14.01; author mycroft; state Exp; branches; next ; desc @@ 1.2 log @Update to 3.0.3. @ text @--- load_xm.c.orig Sun Aug 4 06:02:57 1996 +++ load_xm.c Wed Mar 11 11:07:41 1998 @@@@ -404,6 +404,11 @@@@ /* printf("numrows: %d\n",ph.numrows); */ /* printf("packsize:%d\n",ph.packsize); */ + if(feof(modfp)){ + myerr = ERROR_LOADING_PATTERN; + return 0; + } + of.pattrows[t]=ph.numrows; /* @@@@ -448,6 +453,12 @@@@ printf("Samples:%d\n",ih.numsmp); printf("sampleheadersize:%ld\n",ih.ssize); */ + + if(feof(modfp)){ + myerr = ERROR_LOADING_SAMPLEINFO; + return 0; + } + d->insname=DupStr(ih.name,22); d->numsmp=ih.numsmp; @@@@ -477,6 +488,11 @@@@ pth.volfade =_mm_read_I_UWORD(modfp); _mm_read_I_UWORDS(pth.reserved, 11, modfp); + if(feof(modfp)){ + myerr = ERROR_LOADING_SAMPLEINFO; + return 0; + } + memcpy(d->samplenumber,pth.what,96); d->volfade=pth.volfade; @@@@ -573,6 +589,11 @@@@ _mm_read_str(wh.samplename, 22, modfp); /*printf("wav %d:%22.22s\n",u,wh.samplename);*/ + + if(feof(modfp)){ + myerr = ERROR_LOADING_SAMPLEINFO; + return 0; + } q->samplename =DupStr(wh.samplename,22); q->length =wh.length; @ 1.1 log @Check for EOF so we don't core dump on some bad files. @ text @@