Debug: Show unreachable error groups in sprite dump when show details enabled
This commit is contained in:
@@ -753,6 +753,7 @@ void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *paddi
|
|||||||
} else {
|
} else {
|
||||||
std::string subgroup_padding(padding);
|
std::string subgroup_padding(padding);
|
||||||
subgroup_padding += " ";
|
subgroup_padding += " ";
|
||||||
|
bool found_error_group = false;
|
||||||
for (const auto &range : (*ranges)) {
|
for (const auto &range : (*ranges)) {
|
||||||
char *p = this->buffer;
|
char *p = this->buffer;
|
||||||
p += seprintf(p, lastof(this->buffer), "%srange: %X -> %X", padding, range.low, range.high);
|
p += seprintf(p, lastof(this->buffer), "%srange: %X -> %X", padding, range.low, range.high);
|
||||||
@@ -767,6 +768,7 @@ void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *paddi
|
|||||||
}
|
}
|
||||||
print();
|
print();
|
||||||
this->DumpSpriteGroup(range.group, subgroup_padding.c_str(), SGDF_RANGE);
|
this->DumpSpriteGroup(range.group, subgroup_padding.c_str(), SGDF_RANGE);
|
||||||
|
if (range.group == dsg->error_group) found_error_group = true;
|
||||||
}
|
}
|
||||||
if (default_group != nullptr) {
|
if (default_group != nullptr) {
|
||||||
char *p = this->buffer;
|
char *p = this->buffer;
|
||||||
@@ -776,6 +778,13 @@ void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *paddi
|
|||||||
}
|
}
|
||||||
print();
|
print();
|
||||||
this->DumpSpriteGroup(default_group, subgroup_padding.c_str(), SGDF_DEFAULT);
|
this->DumpSpriteGroup(default_group, subgroup_padding.c_str(), SGDF_DEFAULT);
|
||||||
|
if (default_group == dsg->error_group) found_error_group = true;
|
||||||
|
}
|
||||||
|
if (this->more_details && !found_error_group && dsg->error_group != nullptr) {
|
||||||
|
char *p = this->buffer;
|
||||||
|
p += seprintf(p, lastof(this->buffer), "%sunreachable error group", padding);
|
||||||
|
print();
|
||||||
|
this->DumpSpriteGroup(dsg->error_group, subgroup_padding.c_str(), SGDF_DEFAULT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user