Hi! Ron, in the file source/vm/arrays.c , function hb_arrayEval() , about line 1369, it says "pBaseArray->uiFlags |= 0xF000;" . Can I move it?
ulLen = pBaseArray->ulLen; pBaseArray->uiFlags |= 0xF000; ///////// From here... if( pulStart && ( *pulStart >= 1 ) ) { ulStart = *pulStart; } if( ulStart <= ulLen ) { ulCount = ulLen - ulStart + 1; if( pulCount && ( *pulCount <= ulLen - ulStart ) ) { ulCount = *pulCount; } if( ulStart + ulCount > ulLen ) /* check range */ { ulCount = ulLen - ulStart + 1; } // pBaseArray->uiFlags |= 0xF000; ////// To here........ for( ulStart--; ulCount > 0; ulCount--, ulStart++ ) { hb_vmPushSymbol( &hb_symEval ); hb_vmPush( bBlock ); hb_vmPush( pBaseArray->pItems + ulStart ); hb_vmPushLong( ulStart + 1 ); hb_vmSend( 2 ); } pBaseArray->uiFlags = uiFlags; ... ... In other case, an empty array will set this flag on, but it will not be removed. In other hand, same in the file source/vm/arrays.c , function hb_arraySize() , about line 175, the code is: if( pBaseArray->ulLen > ulLen ) { // Clipper defers all aSize() shrinking operations when in aEval()! if( ( pBaseArray->uiFlags & 0xF000 ) != 0 ) { pBaseArray->ulLen = ulLen; return TRUE; } pItems = pBaseArray->pItems + ulLen; ulPos = pBaseArray->ulLen - ulLen; do { hb_itemSetNil( pItems ); //don't use ++ here pItems++; } while( --ulPos ); } ... ... When "( pBaseArray->uiFlags & 0xF000 )" is on, items deleted with "ASIZE( aArray, LEN( aArray ) - 1 )" aren't cleared. Is it possible any "complex" item would not be freed? Atte. Vic ------------------------------------------------------------------------------ Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com _______________________________________________ xHarbour-developers mailing list xHarbour-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xharbour-developers