From: <ny...@us...> - 2007-02-18 07:06:18
|
Revision: 373 http://svn.sourceforge.net/pmplib/?rev=373&view=rev Author: nyaochi Date: 2007-02-17 23:06:16 -0800 (Sat, 17 Feb 2007) Log Message: ----------- Fixed a serious bug (buffer overrun) in reading PortalPlayer1 database. We should have ignored inactive records in *.dat. Modified Paths: -------------- trunk/pmplib/lib/pmp_portalplayer1/pp1db.c Modified: trunk/pmplib/lib/pmp_portalplayer1/pp1db.c =================================================================== --- trunk/pmplib/lib/pmp_portalplayer1/pp1db.c 2007-02-17 15:37:59 UTC (rev 372) +++ trunk/pmplib/lib/pmp_portalplayer1/pp1db.c 2007-02-18 07:06:16 UTC (rev 373) @@ -579,12 +579,13 @@ const dat_t* src = &db->dat[i]; pmp_music_record_t* dst = &records[j]; - pmplib_record_init(dst); - db->hdr->param.proc_dat_get(dst, src, path_to_root); - ++j; + if (src->status == 0) { + pmplib_record_init(dst); + db->hdr->param.proc_dat_get(dst, src, path_to_root); + ++j; + } } *num_records = n; - return 0; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |