the rationale is that:- the file name in IMAGEHLP_LINE* structures is returned as a pointer to an internal buffer- in the W64 variant of APIs, two calls to fetch_buffer() are currently needed (one for first A allocation, second for W conversion)- this generate bugs as it's assumed the two buffers are different
so the internal_line_t purpose is to factorize the implementations of the 3 variants (A32, A64, W64) into a single code path this insures a unique allocation, and at most, one conversion
fabc4f7e124 dbghelp: Add internal_line_t structure as help in Line manipulation.
dlls/dbghelp/symbol.c | 206 +++++++++++++++++++++++++++++++++++---------------
1 file changed, 146 insertions(+), 60 deletions(-)