From ba15fd914fe2c438f5c620772677d545bbbedc2d Mon Sep 17 00:00:00 2001 From: superp00t Date: Sun, 30 Mar 2025 18:54:17 -0400 Subject: [PATCH] fix(unicode): numeric_limits does not provide maximum pointer value, use UINTPTR_MAX instead --- bc/Unicode.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bc/Unicode.cpp b/bc/Unicode.cpp index 188f88c..d38d84b 100644 --- a/bc/Unicode.cpp +++ b/bc/Unicode.cpp @@ -62,7 +62,7 @@ static const uint8_t bytesFromUTF8[] = { }; int32_t ConvertUTF16to8(uint8_t* dst, uint32_t dstmaxchars, const uint16_t* src, uint32_t srcmaxchars, uint32_t* dstchars, uint32_t* srcchars) { - auto srcend = srcmaxchars & 0x80000000 ? std::numeric_limits::max() : &src[srcmaxchars]; + auto srcend = srcmaxchars & 0x80000000 ? reinterpret_cast(UINTPTR_MAX) : &src[srcmaxchars]; auto dstend = &dst[dstmaxchars]; auto dststart = dst; auto srcstart = src; @@ -156,7 +156,7 @@ done: } int32_t ConvertUTF8to16(uint16_t* dst, uint32_t dstmaxchars, const uint8_t* src, uint32_t srcmaxchars, uint32_t* dstchars, uint32_t* srcchars) { - auto srcend = srcmaxchars & 0x80000000 ? std::numeric_limits::max() : src + srcmaxchars; + auto srcend = srcmaxchars & 0x80000000 ? reinterpret_cast(UINTPTR_MAX) : src + srcmaxchars; auto dstend = dst + dstmaxchars; auto dststart = dst; auto srcstart = src;