Open Wall-AF opened 6 months ago
For reference, replacing the union with the actual datatype results in
pszName = (pDataToCopy->u).szParamName;
Also, if I change the member of the datatype of d402
to a char array of size 8 or less, that automatically fixes the issue!
Also, in case 0x402
, the actual use of the union type is missing from nLen = _strlen((char *)&pDataToCopy->u);
and memcpy(g_szBringUpGroupName,&pDataToCopy->u,nLen + 1);
and cannot be forced as the option isn't available!
Describe the bug When using a structure containing a 'type description value' followed by a union of possible structures (representing those types) using the
Force Field
option to correct Ghidra's choice is sometimes ignored.To Reproduce Steps to reproduce the behavior:
Decompile:
PanelsDebug Function Decompilation
menu)case 41a:
and try to coerce the datatype used in the linepszName = (pDataToCopy->u).d402.szName + 8;
to be(pDataToCopy->u).d41a
(line 318)Expected behavior If the user wishes to correct the datatype, Ghidra should accept and use it.
Screenshots N/A
Attachments dgndmn32_ProcessRPCRequest.zip
Environment (please complete the following information):
Additional context N/A