From 4d8f9d315d7f1fb98308bb6a0104434c4fcb8268 Mon Sep 17 00:00:00 2001 From: Antonio Linares Date: Wed, 6 Oct 1999 19:24:55 +0000 Subject: [PATCH] *** empty log message *** --- harbour/ChangeLog | 188 ++++++++++++++++++++++++++++++++++- harbour/source/rtl/classes.c | 12 +-- 2 files changed, 193 insertions(+), 7 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index a99327b1b8..67dc8b5a86 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,7 @@ +19991006-21:08 GMT+1 Antonio Linares + * source/rtl/classes.c + * Fixed bug for CLASSDATAs INIT clause on inherited classes. + 19991006-15:05 EDT Paul Tucker * makefile.vc + source/rtl/dummy.prg @@ -117,7 +121,7 @@ 19991006-10:44 GMT+1 Victor Szel * ChangeLog - ! Fixed deleted entries, missing entries, conflict markers, + ! Fixed deleted entries, missing entries, conflict markers, double entries. * include/Makefile + harbour.ch added @@ -514,6 +518,188 @@ Mon Oct 04 12:52:42 1999 Gonzalo A. Diethelm *.b?? * source/hbpp changed to source/pp. +19991004-14:48 GMT+1 Victor Szel + * tests/working/*.bat + *.b?? + makefile.vc + libs/* + lib/* + * libs directory name changed to lib, the win16 and win32 + subdirs have been removed. + * win32 dir is no longer needed, since now the windows terminal.lib + is named termwin.lib. +source/rtl/tgetlist.prg + doc/funclist.txt + + READINSERT() function added. (Thanks to Matteo Baccan) + * source/rtl/filesys.c + include/filesys.h + + hb_fsTell() added to the header file + % hb_fsSetDev*() now calls hb_fsSetDevMode(), so some platform specific + code could be eliminated. + % Some simplification in FSETDEVMOD() + + Added missing HB_ prefix to FSETDEVMOD() + +19991005-12:30 GMT+2 Ryszard Glab + + *source/compiler/harbour.y +<<<<<<< ChangeLog + * changed some rules to correctly handle the following syntax: + LOCAL cbVar:={|| cbVar} + (the cbVar inside a codeblock is correctly considered a local + variable instead of memvar variable) + * corrected usage info to print LF at the end of message +======= + * changed some rules to correctly handle the following syntax: + LOCAL cbVar:={|| cbVar} + (the cbVar inside a codeblock is correctly considered a local + variable instead of memvar variable) + * corrected usage info to print LF at the end of message +>>>>>>> 1.1131 + +19991005-08:36 GMT+1 Victor Szel + * source/vm/main*.c + source/vm/Makefile + include/ctoharb.h + ! Some cleanup on the new main() functions. + (using header file, fixed CVS headers, added copyright header, removed a TODO, + TO DO -> TODO, Hungarian notation, global var name, 0 -> NULL, + added to GNU makefile, std main return value missing.) + * makefile.b40 (removed) + makefile.b32 + make_b40.bat + + makefile.b40 removed, since from now on makefile.b32 provides + the same functionality when B40 macro is defined. See make_b40.bat. + * *.bat + *.b?? + hbpplib.b32 (removed) + + Further uniformized. + + hbpp.exe make process uncommented from make_b16.bat. + We will see how it works. + + hbpplib.b32 incorporated into hbpp.b32 + - hbpp.b16 (removed) + makefile.b16 + make_b16.bat + - hbpp.b16 removed, since it was not used, and is now incorporated to + makefile.b16. + * source/runner/stdalone/hbrun.prg + + Using OutStd() instead of QOUT() to enable output redirecting like in + other command line utilites. + +19991005-07:55 GMT+1 Antonio Linares + + New file source/vm/mainstd.c (entry point for std applications) + + New file source/vm/mainwin.c (entry point for win appplications) + * source/vm/hvm.c + -+ main() renamed to hb_vmInit() + * hb_quit() removed from there and moved to mainstd.c and + mainwin.c respectively. + * makefile.b32 + * added support for mainstd.c and mainwin.c modules. + (make_b32.bat tested and works ok). + * tests/bld_b32.bat + * %1 moved to the end of line + * del %1.c removed + (tested and works ok). + +19991005-00:13 GMT+1 Victor Szel + * source/compiler/genc.c + ! Cosmetic: Some double tabs changed to single ones. + +19991004-22:34 GMT+1 Victor Szel + * tests/db_brows.prg + - READEXIT() removed since it's now part of the RTL. + +19991004-21:34 GMT+1 Victor Szel + * tests/*.bat + ! Reworked, standardized, simplified. Please test them. + Now they resemble to the bin/*.bat batch files. + * tests/buildexe.bat + - Removed since it was obsolete, use bld_b16.bat instead. + +19991004-19:54 GMT+1 Victor Szel + * source/rtl/memvars.c + ! memvars.ch changed to hbmemvar.ch + * tests/working/*.* moved to tests/*.* + * tests/working/db_brows.* + ! Fixed the CVS header, they missed to closing "$" + +19991004-19:23 GMT+1 Victor Szel + * tests/broken/*.* moved to tests/working + tests/working/Makefile + * moved to the BAD_PRG_SOURCES + - tests/broken/ + - Removed + * tests/working/hscript/*.* moved to samples/hscript + * Moved + * source/rtl/mlcount.c + * BYTE type changed to USHORT. + * Hungarian notation slighly corrected. + +19991004-18:58 GMT+1 Victor Szel + + source/runner/stdalone/hbrun.prg + + Added (now for sure) + +19991004-18:53 GMT+1 Victor Szel + + include/reserved.ch + + Added for complete Clipper compatibility, the file is a dummy, so it's + a TODO to replicate to originial functionality. + * include/Makefile + * Updated. + +Mon Oct 04 12:52:42 1999 Gonzalo A. Diethelm + + * tests/working/Makefile: + Added missing '\' after db_brows.ch. + Changed spaces to tabs. + +19991004-18:42 GMT+1 Victor Szel + * include/classes.ch -> include/hbclass.ch + include/external.ch -> include/hbextern.ch + include/memvars.ch -> include/hbmemvar.ch + source/debug/debugger.prg + source/debug/tbrwtext.prg + source/rtl/tbcolumn.prg + source/rtl/tbrowse.prg + source/rtl/tget.prg + source/rtl/tgetlist.prg + tests/working/classch.prg + source/runner/stdalone/hbrun.prg + source/rtl/memvarbl.prg + source/rtl/menuto.prg + * Non-Clipper compatible Harbour .CH filenames prefixed with "HB" to avoid + possible name collisions with existing header files. + +19991004-18:06 GMT+1 Victor Szel + + source/rtl/mlcount.c + source/rtl/Makefile + doc/funclist.txt + + MLCOUNT() added + (thanks to Ignacio Ortiz de Zúniga ) + - source/runner/stdalone/runner.prg + - Removed (now for sure) + +19991004-16:25 GMT+1 Victor Szel + * source/runner/stdalone/runner.prg -> hbrun.prg + source/runner/stdalone/Makefile + runner.b32 + makefile.vc + tests/working/hbrun.bat -> hbrunprg.bat + tests/working/run_all.bat + tests/working/test_all.prg + * runner.exe renamed to hbrun.exe to better fit into the final + executable naming style (harbour/hbpp/hbrun) + +19991004-15:15 GMT+1 Victor Szel + * source/hbpp -> source/pp + source/Makefile + source/pp/Makefile + source/pp/stdalone/Makefile + source/compiler/Makefile + source/runner/stdalone/Makefile + tests/working/Makefile + makefile.* + *.b?? + * source/hbpp changed to source/pp. + 19991004-14:48 GMT+1 Victor Szel * tests/working/*.bat *.b?? diff --git a/harbour/source/rtl/classes.c b/harbour/source/rtl/classes.c index fba8edd419..0e2572a1cc 100644 --- a/harbour/source/rtl/classes.c +++ b/harbour/source/rtl/classes.c @@ -73,7 +73,7 @@ typedef struct USHORT uiData; USHORT uiScope; PHB_ITEM pInitValue; - /* BYTE bClsDataInitiated; */ + BYTE bClsDataInitiated; } METHOD, * PMETHOD; typedef struct @@ -611,7 +611,8 @@ HARBOUR HB___CLSINST( void ) hb_stack.Return.item.asArray.value->uiClass = uiClass; for( uiAt = 0; uiAt < uiLimit; uiAt++, pMeth++ ) - if( pMeth->pInitValue ) + { + if( pMeth->pInitValue && ! pMeth->bClsDataInitiated ) { if( pMeth->pFunction != hb___msgGetClsData ) /* is a DATA */ hb_itemArrayPut( &hb_stack.Return, pMeth->uiData, pMeth->pInitValue ); @@ -619,17 +620,16 @@ HARBOUR HB___CLSINST( void ) { HB_ITEM init; hb_arrayGet( pClass->pClassDatas, pMeth->uiData, &init ); - if( ( init.type == IT_NIL ) && ( pMeth->pInitValue ) ) /* && ! pMeth->bClsDataInitiated ) */ + if( init.type == IT_NIL ) { hb_arraySet( pClass->pClassDatas, pMeth->uiData, pMeth->pInitValue ); - hb_itemRelease( pMeth->pInitValue ); - /* pMeth->bClsDataInitiated = TRUE; */ - pMeth->pInitValue = 0; + pMeth->bClsDataInitiated = 1; } else hb_itemRelease( &init ); } } + } } }