Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 322310 - EDC doesn't fill functionName for StackFrameDMC when file/line not found
Summary: EDC doesn't fill functionName for StackFrameDMC when file/line not found
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-debug-edc (show other bugs)
Version: 7.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Ken Ryall CLA
QA Contact: Ken Ryall CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-08-11 00:45 EDT by Kirk Beitz CLA
Modified: 2011-05-12 16:54 EDT (History)
0 users

See Also:


Attachments
patch adding function getSymbolNameAtAddress in IEDCSymbol.java & Symbols.java for use in StackFrame.java (6.46 KB, patch)
2010-08-11 00:45 EDT, Kirk Beitz CLA
cdtdoug: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Kirk Beitz CLA 2010-08-11 00:45:50 EDT
Created attachment 176294 [details]
patch adding function getSymbolNameAtAddress in IEDCSymbol.java & Symbols.java for use in StackFrame.java

CDT provides for the frames in the Debug "stack" view and for CSourceNotFound editor windows to have descriptions that are based upon the function name, module name and address if the file for the source cannot be determined (e.g. linked/loaded shared library without debug symbols, etc).

while DSF-gdb and other debuggers provide a function-name for these circumstances, EDC does not yet do this.

the attached StackFrameDMC.functionName-lookup.patch solves the problem when it can by enhancing IEDCSymbol.java and Symbols.java to add a new member interface and function getSymbolNameAtAddress(), which then calls the reader's getSymbolAtAddress() function to return an appropriate symbol, from which it retrieves and returns the name.  StackFrameDMC constructor then takes the name and caches it for later use when constructing the descriptions for frames to populate the Debug "stack" view, and for the names of CSourceNotFound editor windows.

(the attachment is sufficient for EDC debuggers for which the member function BaseExecutableSymbolicsReader#getSymbolAtAddress provides a symbol when an address is passed that is >= the symbol location and < the symbol location + the symbol size.  EDC for windows-x86 will currently fail unless the patches for ecl.bz 322309 & 322297 are approved and committed.)
Comment 2 Kirk Beitz CLA 2010-08-12 01:58:20 EDT
cdt cvs genie reports that the patch has been committed.