From 570fe0b6ff1a4b97a7577ece026efa5800939e69 Mon Sep 17 00:00:00 2001 From: Bruno Cantero Date: Sat, 24 Jul 1999 19:17:30 +0000 Subject: [PATCH] ChangeLogTag:19990724-21:02 GMT+1 Bruno Cantero --- harbour/ChangeLog | 16 ++++++++++++++++ harbour/include/errorapi.h | 5 +++-- harbour/include/set.h | 16 +++++++++------- harbour/source/rtl/errorapi.c | 22 ++++++++++++++++++++-- harbour/source/vm/hvm.c | 12 ++++++++---- 5 files changed, 56 insertions(+), 15 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index dfd1b051ed..29ff44a41f 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,19 @@ +19990724-21:02 GMT+1 Bruno Cantero + + include/set.h + Added two prototypes + + source/vm/hvm.c + Added one prototype and initialize the RDD + + include/errorapi.h + Added one prototype + + source/rtl/errorapi.c + New function: hb_errorRT_DBCMD + + source/rdd/dbcmd.c + New file. First functions for the RDD system + + source/rdd/rddsys.prg + New file. Define the default RDD driver (DBFNTX) + * source/rdd/nulsys/nulsys.prg + New file. Allow compile without RDD driver + 19990724-11:50 CET Patrick Mast * Makefile.b16 and Makefile.b32 added -DHARBOUR_USE_GTAPI swicth diff --git a/harbour/include/errorapi.h b/harbour/include/errorapi.h index c36d9e1116..c111d698c2 100644 --- a/harbour/include/errorapi.h +++ b/harbour/include/errorapi.h @@ -96,8 +96,9 @@ PHB_ITEM hb_errPutFileName( PHB_ITEM pError, char * szFileName ); /* Error launchers */ -WORD hb_errorRT_BASE( ULONG ulGenCode, ULONG ulSubCode, char* szDescription, char* szOperation ); -WORD hb_errorRT_TERMINAL( ULONG ulGenCode, ULONG ulSubCode, char* szDescription, char* szOperation ); +WORD hb_errorRT_BASE( ULONG ulGenCode, ULONG ulSubCode, char * szDescription, char * szOperation ); +WORD hb_errorRT_TERMINAL( ULONG ulGenCode, ULONG ulSubCode, char * szDescription, char * szOperation ); +WORD hb_errorRT_DBCMD( ULONG ulGenCode, ULONG ulSubCode, char * szDescription, char * szOperation ); /* TODO: Enable this: void hb_errorInternal( ULONG ulCode ); */ diff --git a/harbour/include/set.h b/harbour/include/set.h index 050653ad92..919a0a315b 100644 --- a/harbour/include/set.h +++ b/harbour/include/set.h @@ -67,13 +67,15 @@ #include -HARBOUR HB_SET (void); -HARBOUR HB_SETCENTURY (void); -char * hb_setColor (char *); -void hb_setInitialize (void); -void hb_consoleInitialize (void); -void hb_setRelease (void); -void hb_consoleRelease (void); +HARBOUR HB_SET( void ); +HARBOUR HB_SETCENTURY( void ); +char * hb_setColor( char * ); +void hb_setInitialize(void ); +void hb_consoleInitialize( void ); +void hb_rddInitialize( void ); +void hb_setRelease( void ); +void hb_consoleRelease( void ); +void hb_rddRelease( void ); typedef enum { diff --git a/harbour/source/rtl/errorapi.c b/harbour/source/rtl/errorapi.c index 9551d52a1f..b4981c895f 100644 --- a/harbour/source/rtl/errorapi.c +++ b/harbour/source/rtl/errorapi.c @@ -274,7 +274,7 @@ PHB_ITEM hb_errPutFlags( PHB_ITEM pError, USHORT uiFlags ) /* Wrappers for hb_errLaunch() */ -WORD hb_errorRT_BASE( ULONG ulGenCode, ULONG ulSubCode, char* szDescription, char* szOperation ) +WORD hb_errorRT_BASE( ULONG ulGenCode, ULONG ulSubCode, char * szDescription, char * szOperation ) { PHB_ITEM pError = hb_errNew(); WORD wRetVal; @@ -293,7 +293,7 @@ WORD hb_errorRT_BASE( ULONG ulGenCode, ULONG ulSubCode, char* szDescription, cha return wRetVal; } -WORD hb_errorRT_TERMINAL( ULONG ulGenCode, ULONG ulSubCode, char* szDescription, char* szOperation ) +WORD hb_errorRT_TERMINAL( ULONG ulGenCode, ULONG ulSubCode, char * szDescription, char * szOperation ) { PHB_ITEM pError = hb_errNew(); WORD wRetVal; @@ -312,3 +312,21 @@ WORD hb_errorRT_TERMINAL( ULONG ulGenCode, ULONG ulSubCode, char* szDescription, return wRetVal; } +WORD hb_errorRT_DBCMD( ULONG ulGenCode, ULONG ulSubCode, char * szDescription, char * szOperation ) +{ + PHB_ITEM pError = hb_errNew(); + WORD wRetVal; + + hb_errPutSeverity( pError, ES_ERROR ); + hb_errPutSubSystem( pError, HB_ERR_SS_DBCMD ); + hb_errPutGenCode( pError, ulGenCode ); + hb_errPutSubCode( pError, ulSubCode ); + hb_errPutDescription( pError, szDescription ); + hb_errPutOperation( pError, szOperation ); + + wRetVal = hb_errLaunch( pError ); + + hb_errRelease( pError ); + + return wRetVal; +} diff --git a/harbour/source/vm/hvm.c b/harbour/source/vm/hvm.c index ea6c9a589a..833d0da4da 100644 --- a/harbour/source/vm/hvm.c +++ b/harbour/source/vm/hvm.c @@ -53,6 +53,7 @@ HARBOUR HB_ERRORSYS( void ); HARBOUR HB_ERRORNEW( void ); HARBOUR HB_EVAL( void ); /* Evaluates a codeblock from Harbour */ +HARBOUR HB_RDDSYS( void ); HARBOUR HB_MAIN( void ); /* fixed entry point by now */ HARBOUR HB_VALTYPE( void ); /* returns a string description of a value */ @@ -235,9 +236,10 @@ BYTE bErrorLevel = 0; /* application exit errorlevel */ stack.Return.type = IT_NIL; StackInit(); hb_NewDynSym( &symEval ); /* initialize dynamic symbol for evaluating codeblocks */ - hb_setInitialize(); /* initialize Sets */ - hb_consoleInitialize(); /* initialize Console */ + hb_setInitialize(); /* initialize Sets */ + hb_consoleInitialize(); /* initialize Console */ hb_MemvarsInit(); + hb_rddInitialize(); /* initialize RDD */ #ifdef HARBOUR_OBJ_GENERATION ProcessObjSymbols(); /* initialize Harbour generated OBJs symbols */ #endif @@ -267,10 +269,11 @@ BYTE bErrorLevel = 0; /* application exit errorlevel */ for( i = 1; i < argc; i++ ) /* places application parameters on the stack */ PushString( argv[ i ], strlen( argv[ i ] ) ); - Do( argc - 1 ); /* invoke it with number of supplied parameters */ + Do( argc - 1 ); /* invoke it with number of supplied parameters */ - DoExitFunctions(); /* process defined EXIT functions */ + DoExitFunctions(); /* process defined EXIT functions */ + hb_rddRelease(); /* release RDD */ ItemRelease( &stack.Return ); hb_arrayRelease( &aStatics ); ItemRelease( &errorBlock ); @@ -927,6 +930,7 @@ static void ForceLink( void ) /* To force the link of some functions */ { HB_ERRORSYS(); HB_ERRORNEW(); + HB_RDDSYS(); } void ForTest( void ) /* Test to check the end point of the FOR */