libctf: Fix recursive descent into anonymous SOU fields

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

(cherry picked from commit 6e563a1b608438504d963c2d7c70e50d2e75af46)
(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,
&name1);
if (name1 == NULL &&
_ctf_member_info(fp, type, name1, offset + off, mip) == 0)
if (name1[0] == '\0' &&
_ctf_member_info(fp, type, name, offset + off, mip) == 0)
return (0);
if (strcmp(name1, name) == 0) {
mip->ctm_type = type;