{
assert( NULL != p_binfo );
+ if( NULL != p_binfo->dwarf.p_infoval ) {
+ free( p_binfo->dwarf.p_infoval );
+ p_binfo->dwarf.p_infoval = NULL;
+ }
+
memset( p_binfo, 0x00, sizeof( LibGoblin_BinaryInfo ) );
/*
assert( NULL != p_binfo_now );
+ p_binfo_now->dwarf.p_infoval = NULL;
BinaryInfo_ClearBinInfo( p_binfo_now );
+
p_binfo_now->i_id = i_id_now;
//p_binfo_now->b_phase = LIBGOBLIN_BINFO_PHASE_ALLOCED;
p_binfo_now->i_pginfo = ((NULL == p_pginfo) ? -1 : p_pginfo->i_id );
for( i_cnt = 0; i_cnt < LIBGOBLIN_BINFO_UNITS; i_cnt++ ) {
p_binfo = BINFO(i_cnt);
+ p_binfo->dwarf.p_infoval = NULL;
BinaryInfo_ClearBinInfo( p_binfo );
}
/*=====================================================================*/
typedef struct {
+ DWord dw_attribute;
+ LibGoblin_DWARF_DIEValue *p_val;
+} LibGoblin_DWARF_Attribute;
+
+
+/*=====================================================================*/
+typedef struct {
Byte *pb_sechdr;
Byte *pb_data; // FileLocation (Offset)
Word w_index;
/* Binary-Format Depending Info. (ELF)*/
//void *p_format;
+ struct {
+ int i_maxvals;
+ LibGoblin_DWARF_DIEValue *p_infoval;
+ } dwarf;
+
} LibGoblin_BinaryInfo;