libctf: Fix recursive descent into anonymous SOU fields

Approved by:	re (gjb)
PR:		262412
Tested by:	dhw, gallatin
Fixes:		a6fb869173 ("libctf: Handle CTFv3 containers")
Sponsored by:	The FreeBSD Foundation

(cherry picked from commit 6e563a1b60)
(cherry picked from commit 8b01c3026b)
This commit is contained in:
Mark Johnston 2022-04-12 15:24:40 -04:00
parent 6955dbde7a
commit 5f649725da
1 changed files with 2 additions and 2 deletions

View File

@ -818,8 +818,8 @@ _ctf_member_info(ctf_file_t *fp, ctf_id_t type, const char *name, ulong_t off,
ctf_get_ctm_info(fp, mp, size, &increment, &type, &offset, ctf_get_ctm_info(fp, mp, size, &increment, &type, &offset,
&name1); &name1);
if (name1 == NULL && if (name1[0] == '\0' &&
_ctf_member_info(fp, type, name1, offset + off, mip) == 0) _ctf_member_info(fp, type, name, offset + off, mip) == 0)
return (0); return (0);
if (strcmp(name1, name) == 0) { if (strcmp(name1, name) == 0) {
mip->ctm_type = type; mip->ctm_type = type;