arraySize and arrayLen bug fixed

This commit is contained in:
Eddie Runia
1999-05-16 00:03:13 +00:00
parent 949171bc3c
commit 66de9d3077
3 changed files with 8 additions and 2 deletions

View File

@@ -1,3 +1,8 @@
19990516-01:00 CET Eddie Runia
* source/rtl/arrays.c, source/rtl/extend.h
ULONG instead of int hb_arrayLen()
Reallocation bug in arrayAdd fixed
19990515-19:40 CET Eddie Runia
* source/rtl/classes.c, source/rtl/arrays.c
oClone added (actually : aClone can handle both :-)

View File

@@ -143,7 +143,7 @@ void ItemRelease( PITEM pItem );
void hb_arrayNew( PITEM pItem, ULONG ulLen ); /* creates a new array */
void hb_arrayGet( PITEM pArray, ULONG ulIndex, PITEM pItem ); /* retrieves an item */
int hb_arrayLen( PITEM pArray ); /* retrives the array len */
ULONG hb_arrayLen( PITEM pArray ); /* retrives the array len */
void hb_arraySet( PITEM pArray, ULONG ulIndex, PITEM pItem ); /* sets an array element */
void hb_arraySize( PITEM pArray, ULONG ulLen ); /* sets the array total length */
void hb_arrayRelease( PITEM pArray ); /* releases an array - don't call it - use ItemRelease() !!! */

View File

@@ -45,6 +45,7 @@ void hb_arrayAdd( PITEM pArray, PITEM pValue )
{
PBASEARRAY pBaseArray = ( PBASEARRAY ) pArray->value.pBaseArray;
hb_arraySize( pArray, pBaseArray->ulLen + 1 );
pBaseArray = ( PBASEARRAY ) pArray->value.pBaseArray;
ItemCopy( pBaseArray->pItems + ( pBaseArray->ulLen - 1 ), pValue );
}
@@ -162,7 +163,7 @@ void hb_arrayLast( PITEM pArray, PITEM pResult )
ItemRelease( pResult );
}
int hb_arrayLen( PITEM pArray )
ULONG hb_arrayLen( PITEM pArray )
{
if( IS_ARRAY( pArray ) )
return ( ( PBASEARRAY ) pArray->value.pBaseArray )->ulLen;