2013-07-03 12:14 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapidbg.h
* src/debug/dbgentry.c
* src/debug/debugger.prg
+ added new C function hb_dbgGetModuleName() - it returns module name
used to register module in HVM. In current version it only strips
path part though in the future it may use some more advanced code
which allow to debug modules with the same name but different paths
in single application and such extension will be local to core debug
code if upper level debugger uses hb_dbgGetModuleName()
+ added new PRG function __DBGGETMODULENAME() - it's wrapper to
hb_dbgGetModuleName()
+ added new PRG function __DBGMODULEMATCH()
! use __DBGMODULEMATCH() instead of hb_FileMatch() and strip_path()
! eliminated strip_path() from PRG code and use hb_dbgGetModuleName()
in C code in places where it's necessary
! replaced few strcmp() used to compare module names with
FILENAME_EQUAL()
; above modification may fix few potential problem with breakpoints
in debugger on some platforms if user uses different paths for
debugger and compilers.
! eliminated hack with memvar/field name copy in watch points,
it also fixes memory leak when fields are used in watch points.
% replaced few DO CASE with SWITCH
This commit is contained in:
@@ -67,7 +67,8 @@ extern HB_EXPORT PHB_ITEM hb_dbg_vmVarGGet( int nGlobal, int nOffset );
|
||||
|
||||
/* internal debugger function */
|
||||
extern HB_EXPORT void hb_dbgEntry( int nMode, int nLine, const char * szName, int nIndex, PHB_ITEM pFrame );
|
||||
extern HB_EXPORT void hb_dbgAddBreak( void * handle, const char * cModule, int nLine, const char * szFunction );
|
||||
extern HB_EXPORT const char * hb_dbgGetModuleName( void * handle, const char * szName );
|
||||
extern HB_EXPORT void hb_dbgAddBreak( void * handle, const char * szModule, int nLine, const char * szFunction );
|
||||
extern HB_EXPORT void hb_dbgAddWatch( void * handle, const char * szExpr, HB_BOOL bTrace );
|
||||
extern HB_EXPORT void hb_dbgDelBreak( void * handle, int nBreak );
|
||||
extern HB_EXPORT void hb_dbgDelWatch( void * handle, int nWatch );
|
||||
|
||||
Reference in New Issue
Block a user