oem-meta: Fix to_hex_string truncation issue for values > 0xFF
Description:
Change parameter type from uint8_t to uint32_t and fix the format
string to properly handle hexadecimal values larger than 0xFF.
Motivation:
The current implementation truncates values larger than 0xFF due to
uint8_t limitation, causing incorrect display in event messages.
Change-Id: I791c7f0771d3a2ae7b637ca22fed959d94bc86df
Signed-off-by: Carter Chen <carter.chen.wiwynn@gmail.com>
diff --git a/oem/meta/event/oem_event_manager.hpp b/oem/meta/event/oem_event_manager.hpp
index d810e5a..b989dc3 100644
--- a/oem/meta/event/oem_event_manager.hpp
+++ b/oem/meta/event/oem_event_manager.hpp
@@ -112,9 +112,9 @@
*
* @return The hex string representation of the byte.
*/
- inline auto to_hex_string(uint8_t value, size_t len = 2) const
+ inline auto to_hex_string(uint32_t value, size_t len = 2) const
{
- return std::format("{:02x}", value, len);
+ return std::format("{:0{}x}", value, len);
}
/** @brief Convert CPU, channel, and slot to a DIMM string.