diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 0a3b0a510c..7088c77096 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,7 @@ +2001-02-23 17:20 UTC-0800 Ron Pinkas + * source/vm/hvm.c + ! Added logic to clear items of extraneous parameters in hb_vmFrame(). + 2001-02-23 21:40 GMT+3 Alexander Kresin * harbour/source/rdd/dbfntx/dbfntx1.c * bug fixed, reported by Maurilio Longo @@ -5,6 +9,7 @@ 2001-02-23 21:40 GMT+3 Alexander Kresin * harbour/source/rdd/dbfntx/dbfntx1.c * building of indexes optimized + 2001-02-13 hh:mm GMT+1 Jose Gimenez (JFG) * source/rtl/filesys.c * hb_fsOpen @@ -17,7 +22,7 @@ * hb_fsSeek * hb_fsTell + added logic to use Win32 API calls - + * tests/files.prg * tested up to 20,000 DBF files diff --git a/harbour/source/vm/hvm.c b/harbour/source/vm/hvm.c index 661e9abb04..41377a63d3 100644 --- a/harbour/source/vm/hvm.c +++ b/harbour/source/vm/hvm.c @@ -3117,10 +3117,18 @@ static void hb_vmModuleName( char * szModuleName ) /* PRG and function name info static void hb_vmFrame( BYTE bLocals, BYTE bParams ) { - int iTotal; + int iTotal, iExtra; HB_TRACE(HB_TR_DEBUG, ("hb_vmFrame(%d, %d)", (int) bLocals, (int) bParams)); + iExtra = hb_pcount() - bParams; + + while( iExtra > 0 ) + { + hb_itemClear( hb_stackItemFromTop( -iExtra ) ); + iExtra--; + } + iTotal = bLocals + bParams; if( iTotal ) {