diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 889e1d4e78..1550fd2064 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,22 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ + - harbour/utils/hbpp/hbpptable.c + + harbour/utils/hbpp/hbpptbl.c + * harbour/utils/hbpp/Makefile + * harbour/common.mak + * Renamed hbpptable.c->hbpptbl.c to follow 8.3 naming convention + +2006-11-09 09:45 UTC+0100 Marek Paliwoda (mpaliwoda at interia pl) + * harbour/makefile.bc + * Adapted to the new Preprocessor utility ppgen.exe + * Cleaned hbpp.exe dependecies due to recent changes + * harbour/makefile.vc + * harbour/common.mak + * Cleaned hbpp.exe dependecies due to recent changes + program exit, together with logging unreleased memory + blocks report to fm.log file. Borrowed from xharbour. + - harbour/utils/hbpp/pptable.c + harbour/utils/hbpp/hbppcomp.c + harbour/utils/hbpp/hbppcore.c + harbour/utils/hbpp/hbpplib.c @@ -17,7 +33,7 @@ 2006-11-08 00:39 UTC+0200 JF Lefebvre (jflefebv at mafact com) * harbour/makefile.vc * harbour/common.mak - + * Adapted to the new Preprocessor utility ppgen.exe Someone should rename the following files into utils/hbpp ppcomp.c -> hbppcomp.c pplib.c -> hbpplib.c @@ -116,7 +132,7 @@ * makefile64.nt * updated with recent changes - ./ppgen$(EXE_EXT) $(TOP)$(ROOT)include/hbstdgen.ch -opptable.c -q +2006-02-08 18:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/source/rtl/gtwin/gtwin.c + added PreExt() and PostExt() methods diff --git a/harbour/common.mak b/harbour/common.mak index 1facdef66a..25a2225520 100644 --- a/harbour/common.mak +++ b/harbour/common.mak @@ -155,6 +155,8 @@ GTWVT_LIB = $(LIB_DIR)\gtwvt.lib GTGUI_LIB = $(LIB_DIR)\gtgui.lib HARBOUR_EXE = $(BIN_DIR)\harbour.exe +# required (intermediate) utility +# to generate pptable.c HBPPGEN_EXE = $(BIN_DIR)\ppgen.exe HBPP_EXE = $(BIN_DIR)\hbpp.exe HBPPTEST_EXE = $(BIN_DIR)\hbpptest.exe @@ -235,10 +237,9 @@ COMMON_LIB_OBJS = \ #********************************************************** PP_LIB_OBJS = \ + $(OBJ_DIR)\pptable.obj \ $(OBJ_DIR)\ppcore.obj \ $(OBJ_DIR)\pplib.obj \ - $(OBJ_DIR)\pptable.obj \ - $(OBJ_DIR)\pragma.obj \ #********************************************************** @@ -728,7 +729,6 @@ GTGUI_DLL_OBJS = $(GTGUI_LIB_COMMON_OBJS) $(GTGUI_LIB_SHARED_OBJS) #********************************************************** HARBOUR_EXE_OBJS = \ - $(OBJ_DIR)\ppcomp.obj \ $(OBJ_DIR)\harbour.obj \ $(OBJ_DIR)\harboury.obj \ $(OBJ_DIR)\harbourl.obj \ @@ -741,7 +741,9 @@ HARBOUR_EXE_OBJS = \ $(OBJ_DIR)\hblbl.obj \ $(OBJ_DIR)\hbpcode.obj \ $(OBJ_DIR)\hbstrong.obj \ + $(OBJ_DIR)\hbfunchk.obj \ $(OBJ_DIR)\hbfix.obj \ + $(OBJ_DIR)\ppcomp.obj \ $(OBJ_DIR)\genc.obj \ $(OBJ_DIR)\gencc.obj \ $(OBJ_DIR)\gencli.obj \ @@ -752,20 +754,22 @@ HARBOUR_EXE_OBJS = \ $(OBJ_DIR)\expropta.obj \ $(OBJ_DIR)\exproptb.obj \ $(OBJ_DIR)\exproptc.obj \ - $(OBJ_DIR)\hbfunchk.obj \ #********************************************************** HBPP_EXE_OBJS = \ $(OBJ_DIR)\hbpp.obj \ - $(OBJ_DIR)\hbppcore.obj \ - $(OBJ_DIR)\hbppcomp.obj \ - $(OBJ_DIR)\hbpptable.obj \ + $(OBJ_DIR)\hbpptable.obj\ + $(OBJ_DIR)\hbppcomp.obj \ + $(OBJ_DIR)\hbppcore.obj \ + $(OBJ_DIR)\pragma.obj \ + +# $(OBJ_DIR)\hbpplib.obj \ #********************************************************** HBPPGEN_EXE_OBJS = \ - $(OBJ_DIR)\ppgen.obj \ + $(OBJ_DIR)\ppgen.obj \ #********************************************************** @@ -854,31 +858,31 @@ HBVER_EXE_OBJS = \ # TMP_DLL_OBJS = \ - $(COMMON_LIB_OBJS) \ - $(PP_LIB_OBJS) \ - $(VM_DLL_OBJS) \ - $(RTL_LIB_OBJS) \ - $(MACRO_LIB_OBJS) \ - $(DEBUG_LIB_OBJS) \ - $(LANG_LIB_OBJS) \ - $(CODEPAGE_LIB_OBJS) \ - $(RDD_LIB_OBJS) \ - $(DBFNTX_LIB_OBJS) \ - $(DBFCDX_LIB_OBJS) \ - $(DBFFPT_LIB_OBJS) \ - $(HBSIX_LIB_OBJS) \ - $(HSX_LIB_OBJS) \ - $(USRRDD_LIB_OBJS) \ - $(GTCGI_LIB_OBJS) \ - $(GTPCA_LIB_OBJS) \ - $(GTSTD_LIB_OBJS) \ - $(GTWIN_LIB_OBJS) \ - $(GTWVT_LIB_OBJS) \ - $(GTGUI_DLL_OBJS) \ + $(COMMON_LIB_OBJS) \ + $(PP_LIB_OBJS) \ + $(VM_DLL_OBJS) \ + $(RTL_LIB_OBJS) \ + $(MACRO_LIB_OBJS) \ + $(DEBUG_LIB_OBJS) \ + $(LANG_LIB_OBJS) \ + $(CODEPAGE_LIB_OBJS) \ + $(RDD_LIB_OBJS) \ + $(DBFNTX_LIB_OBJS) \ + $(DBFCDX_LIB_OBJS) \ + $(DBFFPT_LIB_OBJS) \ + $(HBSIX_LIB_OBJS) \ + $(HSX_LIB_OBJS) \ + $(USRRDD_LIB_OBJS) \ + $(GTCGI_LIB_OBJS) \ + $(GTPCA_LIB_OBJS) \ + $(GTSTD_LIB_OBJS) \ + $(GTWIN_LIB_OBJS) \ + $(GTWVT_LIB_OBJS) \ + $(GTGUI_DLL_OBJS) \ -DISABLED_SHARED_MODULES= \ - $(NULSYS_LIB_OBJS) \ - $(GTDOS_LIB_OBJS) \ +DISABLED_SHARED_MODULES= \ + $(NULSYS_LIB_OBJS) \ + $(GTDOS_LIB_OBJS) \ #********************************************************** #********************************************************** @@ -889,34 +893,35 @@ DISABLED_SHARED_MODULES= \ # HB_BUILD_TARGETS = \ - $(COMMON_LIB) \ - $(HBPPGEN_EXE) \ - $(PP_LIB) \ - $(HARBOUR_EXE) \ - $(HBPP_EXE) \ + $(COMMON_LIB) \ + $(HBPPGEN_EXE) \ + $(PP_LIB) \ \ - $(VM_LIB) \ - $(RTL_LIB) \ - $(MACRO_LIB) \ - $(DEBUG_LIB) \ - $(LANG_LIB) \ - $(CODEPAGE_LIB) \ - $(RDD_LIB) \ - $(NULSYS_LIB) \ - $(DBFNTX_LIB) \ - $(DBFCDX_LIB) \ - $(DBFFPT_LIB) \ - $(HBSIX_LIB) \ - $(HSX_LIB) \ - $(USRRDD_LIB) \ - $(HB_GT_LIBS) \ + $(HARBOUR_EXE) \ + $(HBPP_EXE) \ \ - $(HBRUN_EXE) \ - $(HBTEST_EXE) \ - $(HBPPTEST_EXE) \ - $(HBDOC_EXE) \ - $(HBMAKE_EXE) \ - $(HBVER_EXE) \ + $(VM_LIB) \ + $(RTL_LIB) \ + $(MACRO_LIB) \ + $(DEBUG_LIB) \ + $(LANG_LIB) \ + $(CODEPAGE_LIB) \ + $(RDD_LIB) \ + $(NULSYS_LIB) \ + $(DBFNTX_LIB) \ + $(DBFCDX_LIB) \ + $(DBFFPT_LIB) \ + $(HBSIX_LIB) \ + $(HSX_LIB) \ + $(USRRDD_LIB) \ + $(HB_GT_LIBS) \ + \ + $(HBRUN_EXE) \ + $(HBTEST_EXE) \ + $(HBPPTEST_EXE) \ + $(HBDOC_EXE) \ + $(HBMAKE_EXE) \ + $(HBVER_EXE) \ # DLL Target is disabled by default # It can be enabled by setting env diff --git a/harbour/include/hbapi.h b/harbour/include/hbapi.h index da0e50dbdf..3a355b7580 100644 --- a/harbour/include/hbapi.h +++ b/harbour/include/hbapi.h @@ -562,7 +562,7 @@ extern void hb_gcRegisterSweep( HB_GARBAGE_SWEEPER_PTR pSweep, void * Cargo ); extern PHB_ITEM hb_gcGripGet( HB_ITEM_PTR pItem ); extern void hb_gcGripDrop( HB_ITEM_PTR pItem ); -extern void * hb_gcAlloc( ULONG ulSize, HB_GARBAGE_FUNC_PTR pFunc ); /* allocates a memory controlled by the garbage collector */ +extern HB_EXPORT void *hb_gcAlloc( ULONG ulSize, HB_GARBAGE_FUNC_PTR pFunc ); /* allocates a memory controlled by the garbage collector */ extern void hb_gcFree( void *pAlloc ); /* deallocates a memory allocated by the garbage collector */ extern void * hb_gcLock( void *pAlloc ); /* do not release passed memory block */ extern void * hb_gcUnlock( void *pAlloc ); /* passed block is allowed to be released */ diff --git a/harbour/include/hbstack.h b/harbour/include/hbstack.h index 70b7b180f0..7a50b02282 100644 --- a/harbour/include/hbstack.h +++ b/harbour/include/hbstack.h @@ -84,6 +84,8 @@ extern HB_STACK hb_stack; #endif +extern HB_EXPORT HB_ITEM_PTR hb_stackSelfItem( void ); // returns Self object at C function level + extern HB_ITEM_PTR hb_stackItemFromTop( int nFromTop ); extern HB_ITEM_PTR hb_stackItemFromBase( int nFromBase ); extern HB_ITEM_PTR hb_stacklocalVariable( int *piFromBase ); @@ -91,7 +93,6 @@ extern LONG hb_stackTopOffset( void ); extern LONG hb_stackBaseOffset( void ); extern LONG hb_stackTotalItems( void ); extern HB_ITEM_PTR hb_stackBaseItem( void ); -extern HB_ITEM_PTR hb_stackSelfItem( void ); extern HB_ITEM_PTR hb_stackItem( LONG iItemPos ); extern HB_ITEM_PTR hb_stackReturnItem( void ); extern char * hb_stackDateBuffer( void ); diff --git a/harbour/makefile.bc b/harbour/makefile.bc index 423202eeba..6669d840a0 100644 --- a/harbour/makefile.bc +++ b/harbour/makefile.bc @@ -471,6 +471,20 @@ $(PP_LIB) ! #********************************************************** # +# HBPPGEN build rule +# +$(HBPPGEN_EXE) :: $(COMMON_LIB) +$(HBPPGEN_EXE) :: $(HBPPGEN_EXE_OBJS) + IF EXIST "$(HBPPGEN_EXE)" $(DEL) "$(HBPPGEN_EXE)" > NUL + $(CC) @&&! +$(CFLAGS) +-e$(HBPPGEN_EXE) +$(**: = ^ +) +$(COMMON_LIB) +! +#********************************************************** +# # HBPP build rule # $(HBPP_EXE) :: BasicLibs @@ -482,7 +496,6 @@ $(CFLAGS) $(**: = ^ ) $(COMMON_LIB) -$(PP_LIB) ! #********************************************************** # @@ -605,6 +618,14 @@ $(DLL_OBJ_DIR)\mainstd.obj : $(VM_DIR)\mainstd.c #********************************************************** +# Generated by an intermediate utility ppgen.exe +# built at the initial phase of build process +$(PP_DIR)\pptable.c : $(BIN_DIR)\ppgen.exe + IF EXIST "$(PP_DIR)\pptable.c" $(DEL) "$(PP_DIR)\pptable.c" > nul + $(BIN_DIR)\ppgen.exe include/hbstdgen.ch -o$(PP_DIR)/pptable.c -q + +#********************************************************** + $(OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.y bison --no-line -p hb_comp -d $** -o$@ diff --git a/harbour/makefile.vc b/harbour/makefile.vc index 029e775ebe..d2cf7c419a 100644 --- a/harbour/makefile.vc +++ b/harbour/makefile.vc @@ -636,7 +636,7 @@ DLL_OBJS = $(TMP_DLL_OBJS:obj\vc=obj\dll\vc) #********************************************************** # General Library BUILD rule #{$(OBJ_DIR)}.obj{$(COMMON_DIR)}.lib: -# IF EXIST "$@" $(DEL) "$@" > NUL +# IF EXIST "$@" $(DEL) "$@" > nul # $(MKLIB) /out:$@ << #$** #<< @@ -791,7 +791,7 @@ $(GTGUI_LIB) : $(GTGUI_LIB_OBJS) # HARBOUR build rule # $(HARBOUR_EXE) : $(HARBOUR_EXE_OBJS) - IF EXIST "$(HARBOUR_EXE)" $(DEL) "$(HARBOUR_EXE)" > NUL + IF EXIST "$(HARBOUR_EXE)" $(DEL) "$(HARBOUR_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HARBOUR_EXE) @@ -805,7 +805,7 @@ $(PP_LIB) # HBPPGEN build rule # $(HBPPGEN_EXE) : $(HBPPGEN_EXE_OBJS) - IF EXIST "$(HBPPGEN_EXE)" $(DEL) "$(HBPPGEN_EXE)" > NUL + IF EXIST "$(HBPPGEN_EXE)" $(DEL) "$(HBPPGEN_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBPPGEN_EXE) @@ -818,21 +818,20 @@ $(COMMON_LIB) # HBPP build rule # $(HBPP_EXE) : $(HBPP_EXE_OBJS) - IF EXIST "$(HBPP_EXE)" $(DEL) "$(HBPP_EXE)" > NUL + IF EXIST "$(HBPP_EXE)" $(DEL) "$(HBPP_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBPP_EXE) $(**: = ^ ) $(COMMON_LIB) -$(PP_LIB) << #********************************************************** # # HBPPTEST build rule # $(HBPPTEST_EXE) : $(HBPPTEST_EXE_OBJS) - IF EXIST "$(HBPPTEST_EXE)" $(DEL) "$(HBPPTEST_EXE)" > NUL + IF EXIST "$(HBPPTEST_EXE)" $(DEL) "$(HBPPTEST_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBPPTEST_EXE) @@ -847,7 +846,7 @@ user32.lib winspool.lib # HBRUN build rule # $(HBRUN_EXE) : $(HBRUN_EXE_OBJS) - IF EXIST "$(HBRUN_EXE)" $(DEL) "$(HBRUN_EXE)" > NUL + IF EXIST "$(HBRUN_EXE)" $(DEL) "$(HBRUN_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBRUN_EXE) @@ -861,7 +860,7 @@ user32.lib winspool.lib # HBTEST build rule # $(HBTEST_EXE) : $(HBTEST_EXE_OBJS) - IF EXIST "$(HBTEST_EXE)" $(DEL) "$(HBTEST_EXE)" > NUL + IF EXIST "$(HBTEST_EXE)" $(DEL) "$(HBTEST_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBTEST_EXE) @@ -875,7 +874,7 @@ user32.lib winspool.lib # HBDOC build rule # $(HBDOC_EXE) : $(HBDOC_EXE_OBJS) - IF EXIST "$(HBDOC_EXE)" $(DEL) "$(HBDOC_EXE)" > NUL + IF EXIST "$(HBDOC_EXE)" $(DEL) "$(HBDOC_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBDOC_EXE) @@ -889,7 +888,7 @@ user32.lib winspool.lib # HBMAKE build rule # $(HBMAKE_EXE) : $(HBMAKE_EXE_OBJS) - IF EXIST "$(HBMAKE_EXE)" $(DEL) "$(HBMAKE_EXE)" > NUL + IF EXIST "$(HBMAKE_EXE)" $(DEL) "$(HBMAKE_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBMAKE_EXE) @@ -903,7 +902,7 @@ user32.lib winspool.lib # HBVER build rule # $(HBVER_EXE) : $(HBVER_EXE_OBJS) - IF EXIST "$(HBVER_EXE)" $(DEL) "$(HBVER_EXE)" > NUL + IF EXIST "$(HBVER_EXE)" $(DEL) "$(HBVER_EXE)" > nul $(LINKER) @<< $(LDFLAGS) /OUT:$(HBVER_EXE) @@ -954,9 +953,13 @@ $(DLL_OBJ_DIR)\mainstd.obj : $(VM_DIR)\mainstd.c # #********************************************************** -$(PP_DIR)\pptable.c : include\hbstdgen.ch - IF EXIST "$(PP_DIR)\pptable.c" $(DEL) "$(PP_DIR)\pptable.c" > NUL - bin\$(CC_DIRNAME)\ppgen include\hbstdgen.ch -o$(PP_DIR)\pptable.c -q +# Generated by an intermediate utility ppgen.exe +# built at the initial phase of build process +$(PP_DIR)\pptable.c : include\hbstdgen.ch + IF EXIST "$(PP_DIR)\pptable.c" $(DEL) "$(PP_DIR)\pptable.c" > nul + $(BIN_DIR)\ppgen.exe include/hbstdgen.ch -o$(PP_DIR)/pptable.c -q + +#********************************************************** $(OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.y bison --no-line -p hb_comp -d $** -o$@ diff --git a/harbour/source/vm/fm.c b/harbour/source/vm/fm.c index f6c90d75f8..b529576392 100644 --- a/harbour/source/vm/fm.c +++ b/harbour/source/vm/fm.c @@ -85,6 +85,7 @@ #include "hbstack.h" #include "hbapierr.h" #include "hbmemory.ch" +#include "hbdate.h" /* #define HB_PARANOID_MEM_CHECK */ @@ -514,6 +515,52 @@ HB_EXPORT void hb_xinit( void ) /* Initialize fixed memory subsystem */ HB_TRACE(HB_TR_DEBUG, ("hb_xinit()")); } +/* Returns pointer to string containing printable version + of pMem memory block */ + +HB_EXPORT char * hb_mem2str( void * pMem, UINT uiSize ) +{ +#define HB_MAX_MEM2STR_BLOCK 256 + + static BYTE cBuffer[2*HB_MAX_MEM2STR_BLOCK+1]; /* multiplied by 2 to allow hex format */ + BYTE *cMem = (BYTE*) pMem; + UINT uiIndex, uiPrintable; + + if( uiSize > HB_MAX_MEM2STR_BLOCK ) + uiSize = HB_MAX_MEM2STR_BLOCK; + + uiPrintable = 0; + for( uiIndex=0; uiIndex < uiSize; uiIndex++ ) + if( cMem[uiIndex] >= ' ' ) + uiPrintable++; + + if( (uiPrintable*100)/uiSize > 70 ) /* more then 70% printable chars */ + { + /* format as string of original chars */ + for( uiIndex=0; uiIndex < uiSize; uiIndex++ ) + if( cMem[uiIndex] >= ' ' ) + cBuffer[uiIndex] = cMem[uiIndex]; + else + cBuffer[uiIndex] = '.'; + cBuffer[uiIndex] = '\0'; + } + else + { + /* format as hex */ + for( uiIndex=0; uiIndex < uiSize; uiIndex++ ) + { + int lownibble, hinibble; + hinibble = (cMem[uiIndex])>>4; + lownibble = (cMem[uiIndex]) & 0x0F; + cBuffer[uiIndex*2] = (hinibble <= 9) ? ('0'+hinibble) : ('A'+hinibble-10); + cBuffer[uiIndex*2+1] = (lownibble <= 9) ? ('0'+lownibble) : ('A'+lownibble-10); + } + cBuffer[uiIndex*2] = '\0'; + } + + return (char *)cBuffer; +} + HB_EXPORT void hb_xexit( void ) /* Deinitialize fixed memory subsystem */ { HB_TRACE(HB_TR_DEBUG, ("hb_xexit()")); @@ -524,6 +571,10 @@ HB_EXPORT void hb_xexit( void ) /* Deinitialize fixed memory subsystem */ PHB_MEMINFO pMemBlock; USHORT ui; char buffer[ 100 ]; + FILE *hLog = NULL; + + if( s_lMemoryBlocks ) + hLog = fopen( "fm.log", "a+" ); hb_conOutErr( hb_conNewLine(), 0 ); hb_conOutErr( "----------------------------------------", 0 ); @@ -531,21 +582,58 @@ HB_EXPORT void hb_xexit( void ) /* Deinitialize fixed memory subsystem */ sprintf( buffer, "Total memory allocated: %li bytes (%li blocks)", s_lMemoryMaxConsumed, s_lMemoryMaxBlocks ); hb_conOutErr( buffer, 0 ); + if ( hLog ) + { + char *szTime = (char *)hb_xgrab(9); + int iYear, iMonth, iDay; + + hb_dateToday( &iYear, &iMonth, &iDay ); + hb_dateTimeStr( szTime ); + + fprintf( hLog, "Memory Allocation Report : Application => %s\n", hb_cmdargARGV()[0] ); + fprintf( hLog, " Application terminated at : %04d.%02d.%02d %s\n", iYear, iMonth, iDay, szTime ); + fprintf( hLog, "%s\n", buffer ); + + hb_xfree( szTime ); + } + if( s_lMemoryBlocks ) { hb_conOutErr( hb_conNewLine(), 0 ); sprintf( buffer, "WARNING! Memory allocated but not released: %li bytes (%li blocks)", s_lMemoryConsumed, s_lMemoryBlocks ); hb_conOutErr( buffer, 0 ); + + if ( hLog ) fprintf( hLog, "%s\n", buffer ); } hb_conOutErr( hb_conNewLine(), 0 ); - for( ui = 1, pMemBlock = s_pFirstBlock; pMemBlock; pMemBlock = pMemBlock->pNextBlock ) - HB_TRACE( HB_TR_ERROR, ( "Block %i (size %lu) %s(%i)", + for( ui = 1, pMemBlock = s_pFirstBlock; pMemBlock; pMemBlock = pMemBlock->pNextBlock ) { + HB_TRACE( HB_TR_ERROR, ( "Block %i (size %lu) %s(%i), \"%s\"", ui++, pMemBlock->ulSize, pMemBlock->szProcName, - pMemBlock->uiProcLine ) ); + pMemBlock->uiProcLine, + hb_mem2str( ( char * ) pMemBlock + HB_MEMINFO_SIZE, pMemBlock->ulSize ) + ) ); + + if ( hLog ) + { + fprintf( hLog, "Block %i %p (size %lu) %s(%i), \"%s\"\n", + ui-1, + (char *) pMemBlock + HB_MEMINFO_SIZE, + pMemBlock->ulSize, + pMemBlock->szProcName, + pMemBlock->uiProcLine, + hb_mem2str( ( char * ) pMemBlock + HB_MEMINFO_SIZE, pMemBlock->ulSize ) ); + } + } + + if( hLog ) + { + fprintf( hLog, "--------------------------------------------------------------------------------\n"); + fclose( hLog ); + } } #endif } diff --git a/harbour/utils/hbpp/ppcomp.c b/harbour/utils/hbpp/hbppcomp.c similarity index 100% rename from harbour/utils/hbpp/ppcomp.c rename to harbour/utils/hbpp/hbppcomp.c diff --git a/harbour/utils/hbpp/ppcore.c b/harbour/utils/hbpp/hbppcore.c similarity index 100% rename from harbour/utils/hbpp/ppcore.c rename to harbour/utils/hbpp/hbppcore.c diff --git a/harbour/utils/hbpp/pplib.c b/harbour/utils/hbpp/hbpplib.c similarity index 100% rename from harbour/utils/hbpp/pplib.c rename to harbour/utils/hbpp/hbpplib.c diff --git a/harbour/utils/hbpp/pptable.c b/harbour/utils/hbpp/hbpptable.c similarity index 100% rename from harbour/utils/hbpp/pptable.c rename to harbour/utils/hbpp/hbpptable.c