Merge pull request #1298 from LukeUsher/fix-titleid-rendering
If the prefix of a title_id is non printable, render the entire serial as hex
This commit is contained in:
commit
ad07eefd3e
|
@ -88,13 +88,13 @@ std::string FormatTitleId(uint32_t title_id)
|
||||||
char pTitleId1 = (title_id >> 24) & 0xFF;
|
char pTitleId1 = (title_id >> 24) & 0xFF;
|
||||||
char pTitleId2 = (title_id >> 16) & 0xFF;
|
char pTitleId2 = (title_id >> 16) & 0xFF;
|
||||||
|
|
||||||
if (isalnum(pTitleId1) && isalnum(pTitleId2)) {
|
if (!isalnum(pTitleId1) || !isalnum(pTitleId2)) {
|
||||||
ss << pTitleId1 << pTitleId2;
|
// Prefix was non-printable, so we need to print a hex reprentation of the entire title_id
|
||||||
} else {
|
ss << std::setfill('0') << std::setw(8) << std::hex << std::uppercase << title_id;
|
||||||
// Prefix was non-printable, so we need to print a hex reprentation
|
return ss.str();
|
||||||
ss << "0x" << std::setfill('0') << std::setw(4) << std::hex << std::uppercase << (uint16_t)((title_id & 0xFFFF0000) >> 16);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ss << pTitleId1 << pTitleId2;
|
||||||
ss << "-";
|
ss << "-";
|
||||||
ss << std::setfill('0') << std::setw(3) << std::dec << (title_id & 0x0000FFFF);
|
ss << std::setfill('0') << std::setw(3) << std::dec << (title_id & 0x0000FFFF);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue