ChangeLog 19991021-15:35 GMT+2

This commit is contained in:
Ryszard Glab
1999-10-21 13:41:05 +00:00
parent 0bf363bba8
commit e57bc40ccd
4 changed files with 18 additions and 1 deletions

View File

@@ -1,3 +1,12 @@
19991021-15:35 GMT+2 Ryszard Glab <rglab@imid.med.pl>
*include/extend.h
*source/rtl/memvars.c
*source/vm/hvm.c
* new function hb_memvarNewParameter() used to create a variable
listed on PARAMETER statement (corrected bug - private variables
are created instead of reusing existing ones)
19991021-16:02 GMT+3 Alexander Kresin
* contrib/odbc/todbc.prg
* there was an infinite loop in TOdbc():New(),

View File

@@ -397,6 +397,7 @@ extern void hb_memvarGetValue( HB_ITEM_PTR, PHB_SYMB );
extern void hb_memvarGetRefer( HB_ITEM_PTR, PHB_SYMB );
extern ULONG hb_memvarGetPrivatesBase( void );
extern void hb_memvarSetPrivatesBase( ULONG );
extern void hb_memvarNewParameter( PHB_SYMB, HB_ITEM_PTR );
/* console I/O subsystem */
extern void hb_consoleInitialize( void );

View File

@@ -498,6 +498,13 @@ void hb_memvarGetRefer( HB_ITEM_PTR pItem, PHB_SYMB pMemvarSymb )
hb_errInternal( 9999, "Invalid symbol item passed as memvar %s", pMemvarSymb->szName, NULL );
}
/*
*/
void hb_memvarNewParameter( PHB_SYMB pSymbol, PHB_ITEM pValue )
{
hb_memvarCreateFromDynSymbol( pSymbol->pDynSym, MV_PRIVATE, pValue );
}
/*
* This function creates a value for memvar variable

View File

@@ -540,7 +540,7 @@ void hb_vmExecute( BYTE * pCode, PHB_SYMB pSymbols )
case HB_P_PARAMETER:
uiParams = pCode[ w + 1 ] + ( pCode[ w + 2 ] * 256 );
hb_memvarSetValue( pSymbols + uiParams, hb_stack.pBase + 1 + pCode[ w + 3 ] );
hb_memvarNewParameter( pSymbols + uiParams, hb_stack.pBase + 1 + pCode[ w + 3 ] );
HB_DEBUG( "(hb_vmPopParameter)\n" );
w += 4;
break;