* p_infoval struct-val move from BinaryFile to BinaryInfo.
p_binfile->dwarf.i_abbrevs_max = 0;
}
- if( NULL != p_binfile->dwarf.p_infoval ) {
- free( p_binfile->dwarf.p_infoval );
- p_binfile->dwarf.p_infoval = NULL;
- p_binfile->dwarf.i_maxvals = 0;
- }
-
memset( p_binfile, 0x00, sizeof( LibGoblin_BinaryFile ) );
p_binfile->i_id = -0x01;
p_binfile->srcfile.p_srcfile = NULL;
p_binfile->dwarf.p_abbrev = NULL;
- p_binfile->dwarf.p_infoval = NULL;
BinaryFile_ClearBinaryFile( p_binfile );
p_binfile->i_id = i_id_now;
p_binfile = BINFILE( i_cnt );
p_binfile->srcfile.p_srcfile = NULL;
p_binfile->dwarf.p_abbrev = NULL;
- p_binfile->dwarf.p_infoval = NULL;
BinaryFile_ClearBinaryFile( p_binfile );
}
LIBGOBLIN_DEBUG_DWARF_EXTERN
void
Debug_DWARF_PrintDIE(
- LibGoblin_BinaryFile *p_bfile,
+ LibGoblin_BinaryInfo *p_binfo,
DWARF_AbbrevEntry *p_abbrev,
DWord dw_abbrevid,
int i_childlv )
str_space[i_end] = '\0';
p_arvnow = p_abbrev + (dw_abbrevid - 1);
- p_val = p_bfile->dwarf.p_infoval;
+ p_val = p_binfo->dwarf.p_infoval;
printf( "%s<%2d>: Abbrev Number: %2d (%s [%02xh])\n",
str_space, i_childlv, dw_abbrevid,
LIBGOBLIN_DEBUG_DWARF_EXTERN
void Debug_DWARF_PrintDIE(
- LibGoblin_BinaryFile *p_bfile, DWARF_AbbrevEntry *p_abbrev,
+ LibGoblin_BinaryInfo *p_binfo, DWARF_AbbrevEntry *p_abbrev,
DWord dw_abbrevid, int i_childlv );
#endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
return 0x03;
}
p_bfile->dwarf.i_maxvals = i_maxitems;
- p_bfile->dwarf.p_infoval = p_dievalue;
+
+ p_binfo->dwarf.i_maxvals = i_maxitems;
+ p_binfo->dwarf.p_infoval = p_dievalue;
return 0x00;
}
assert( NULL != p_binfo );
assert( NULL != p_bfile );
- p_infoval = p_bfile->dwarf.p_infoval;
+ p_infoval = p_binfo->dwarf.p_infoval;
i_childlv = 0;
do {
// Read Reference Abbrev-ID ---
return NULL;
}
- p_val = p_bfile->dwarf.p_infoval;
+ p_val = p_binfo->dwarf.p_infoval;
for( i_cnt = 0; i_cnt < p_arvnow->i_items; i_cnt++, p_val++ ) {
if( DW_AT_name == p_arvnow->dw_attribute[ i_cnt ] ) {
pstr_srcpath = p_val->value.pstr_value;
i_srcfiles = p_bfile->dwarf.i_srcfiles;
- p_infoval = p_bfile->dwarf.p_infoval;
+ p_infoval = p_binfo->dwarf.p_infoval;
// Get section Info ---
psec_info = Section_GetSectionInfo( p_binfo, LIBGOBLIN_SECTION_ID_DEBUG_INFO );
// Dispatch for generate Rapid-Access Table by DIE-tag
i_result = DWARF_Tag_Dispatch( p_binfo, p_bfile, p_srcfile, p_arvnow );
- Debug_DWARF_PrintDIE( p_bfile, p_abbrev, dw_arvid, i_childlv );
+ Debug_DWARF_PrintDIE( p_binfo, p_abbrev, dw_arvid, i_childlv );
}while( 0 != qw_size_cu );
qw_size_info -= t_cuheader.qw_unitsize;
int i_srcfiles;
int i_maxvals;
- LibGoblin_DWARF_DIEValue *p_infoval;
} dwarf;
/* Binary-Format Depending Info. (ELF)*/