Loading...
--- dyld/dyld-1340/mach_o/Version32.cpp
+++ dyld/dyld-1122.1.2/mach_o/Version32.cpp
@@ -40,12 +40,11 @@
uint32_t x = 0;
uint32_t y = 0;
uint32_t z = 0;
- const char* endPtr = versString.data() + versString.size();
- auto res = std::from_chars(versString.data(), endPtr, x);
+ auto res = std::from_chars(versString.begin(), versString.end(), x);
if ( res.ec == std::errc{} && *res.ptr == '.' ) {
- res = std::from_chars(res.ptr + 1, endPtr, y);
+ res = std::from_chars(res.ptr + 1, versString.end(), y);
if ( res.ec == std::errc{} && *res.ptr == '.' )
- res = std::from_chars(res.ptr + 1, endPtr, z);
+ res = std::from_chars(res.ptr + 1, versString.end(), z);
}
bool valueOverflow = (x > 0xffff) || (y > 0xff) || (z > 0xff);
if ( valueOverflow && truncationHandler ) {
@@ -55,8 +54,8 @@
z = std::min(z, 0xFFU);
valueOverflow = false;
}
- if ( res.ptr == nullptr || res.ptr != endPtr || valueOverflow ) {
- if ( valueOverflow || (truncationHandler == nullptr) || (res.ptr == versString.data()) ) {
+ if ( res.ptr == nullptr || res.ptr != versString.end() || valueOverflow ) {
+ if ( valueOverflow || (truncationHandler == nullptr) || (res.ptr == versString.begin()) ) {
char errVersString[versString.size() + 1];
memcpy(errVersString, versString.data(), versString.size());
errVersString[versString.size()] = 0;