From: Julian Seward Date: Fri, 3 Jun 2011 23:27:39 +0000 (+0000) Subject: Followup fix to r11794 (generalise processing of PT_LOAD entries): X-Git-Tag: svn/VALGRIND_3_7_0~442 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c1841e384bedd64658f5db369ff607c03faddec5;p=thirdparty%2Fvalgrind.git Followup fix to r11794 (generalise processing of PT_LOAD entries): change some incorrect "rx->bias" (which due to lameness of C's type system was valid) to "inrx->bias". git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11795 --- diff --git a/coregrind/m_debuginfo/readelf.c b/coregrind/m_debuginfo/readelf.c index fa6c643f77..e6849fdb58 100644 --- a/coregrind/m_debuginfo/readelf.c +++ b/coregrind/m_debuginfo/readelf.c @@ -1557,11 +1557,11 @@ Bool ML_(read_elf_debug_info) ( struct _DebugInfo* di ) if (inrx && size >= 0 && !di->text_present) { di->text_present = True; di->text_svma = svma; - di->text_avma = svma + rx->bias; + di->text_avma = svma + inrx->bias; di->text_size = size; - di->text_bias = rx->bias; + di->text_bias = inrx->bias; di->text_debug_svma = svma; - di->text_debug_bias = rx->bias; + di->text_debug_bias = inrx->bias; TRACE_SYMTAB("acquiring .text svma = %#lx .. %#lx\n", di->text_svma, di->text_svma + di->text_size - 1); @@ -1623,12 +1623,12 @@ Bool ML_(read_elf_debug_info) ( struct _DebugInfo* di ) if (inrx && size >= 0 && !di->rodata_present) { di->rodata_present = True; di->rodata_svma = svma; - di->rodata_avma = svma + rx->bias; + di->rodata_avma = svma + inrx->bias; di->rodata_size = size; - di->rodata_bias = rx->bias; + di->rodata_bias = inrx->bias; di->rodata_debug_svma = svma; di->rodata_debug_bias = inrx->bias; - /* NB was 'inrw' prior to rXXXXX */ + /* NB was 'inrw' prior to r11794 */ TRACE_SYMTAB("acquiring .rodata svma = %#lx .. %#lx\n", di->rodata_svma, di->rodata_svma + di->rodata_size - 1); @@ -1811,7 +1811,7 @@ Bool ML_(read_elf_debug_info) ( struct _DebugInfo* di ) if (0 == VG_(strcmp)(name, ".plt")) { if (inrx && size > 0 && !di->plt_present) { di->plt_present = True; - di->plt_avma = svma + rx->bias; + di->plt_avma = svma + inrx->bias; di->plt_size = size; TRACE_SYMTAB("acquiring .plt avma = %#lx\n", di->plt_avma); } else { @@ -1872,7 +1872,7 @@ Bool ML_(read_elf_debug_info) ( struct _DebugInfo* di ) ELF object. */ if (0 == VG_(strcmp)(name, ".eh_frame")) { if (inrx && size > 0 && di->n_ehframe < N_EHFRAME_SECTS) { - di->ehframe_avma[di->n_ehframe] = svma + rx->bias; + di->ehframe_avma[di->n_ehframe] = svma + inrx->bias; di->ehframe_size[di->n_ehframe] = size; TRACE_SYMTAB("acquiring .eh_frame avma = %#lx\n", di->ehframe_avma[di->n_ehframe]);