diff options
-rw-r--r-- | src/intel/common/gen_decoder.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/intel/common/gen_decoder.c b/src/intel/common/gen_decoder.c index d09b6ea32b6..b3501aec912 100644 --- a/src/intel/common/gen_decoder.c +++ b/src/intel/common/gen_decoder.c @@ -824,14 +824,15 @@ iter_advance_group(struct gen_field_iterator *iter) static bool iter_advance_field(struct gen_field_iterator *iter) { - while (!iter_more_fields(iter)) { + if (iter_more_fields(iter)) { + iter->field = iter->field->next; + } else { if (!iter_more_groups(iter)) return false; iter_advance_group(iter); } - iter->field = iter->field->next; if (iter->field->name) strncpy(iter->name, iter->field->name, sizeof(iter->name)); else |