From 58c6938b73c8685d82905ed55ec5b59e8f163687 Mon Sep 17 00:00:00 2001 From: SilverPlate3 <93097769+SilverPlate3@users.noreply.github.com> Date: Tue, 23 Jul 2024 10:48:53 +0300 Subject: [PATCH] Guard against max being macros in schema.h Similar to: Issue - https://github.com/Tencent/rapidjson/issues/1033 Solution - https://github.com/Tencent/rapidjson/commit/6e38649ec61e5f4f382c257a6b27698bb55eff61 Fix std::numeric_limits::max() compilation confusion on Windows --- include/rapidjson/schema.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/include/rapidjson/schema.h b/include/rapidjson/schema.h index e28ddf7..f049285 100644 --- a/include/rapidjson/schema.h +++ b/include/rapidjson/schema.h @@ -1645,8 +1645,7 @@ private: double qRounded = std::floor(q + 0.5); double scaledEpsilon = (q + qRounded) * std::numeric_limits::epsilon(); double difference = std::abs(qRounded - q); - bool isMultiple = (difference <= scaledEpsilon) - || (difference < std::numeric_limits::min()); + bool isMultiple = difference <= scaledEpsilon || difference < (std::numeric_limits::min)(); if (!isMultiple) { context.error_handler.NotMultipleOf(d, multipleOf_); RAPIDJSON_INVALID_KEYWORD_RETURN(kValidateErrorMultipleOf);