From 926c3e19e7d4179096fc3066b7cb18c04329dd28 Mon Sep 17 00:00:00 2001
From: Rick Newton-Rogers <rnro@apple.com>
Date: Fri, 31 Jan 2025 16:00:41 +0000
Subject: [PATCH] Avoid integer overrun in NIOHTTPResponsiveness (#247)

We use 8*10^9 in `NIOHTTPResponsiveness` however this number will
overrun the integer size on platforms with 32-bit pointer-width such as
watchOS.

This change drops down to use 1*10^9 on such platforms.
---
 Sources/NIOHTTPResponsiveness/ResponsivenessConfig.swift | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/Sources/NIOHTTPResponsiveness/ResponsivenessConfig.swift b/Sources/NIOHTTPResponsiveness/ResponsivenessConfig.swift
index 4eb4512..d69d608 100644
--- a/Sources/NIOHTTPResponsiveness/ResponsivenessConfig.swift
+++ b/Sources/NIOHTTPResponsiveness/ResponsivenessConfig.swift
@@ -33,7 +33,11 @@ public struct ResponsivenessConfigURLs: Codable, Hashable, Sendable {
         case uploadURL = "upload_url"
     }
 
-    static var largeDownloadSize: Int { 8 * 1_000_000_000 }  // 8 * 10^9
+    #if _pointerBitWidth(_32)
+    static var largeDownloadSize: Int { 1_000_000_000 }  // 1 * 10^9
+    #else
+    static var largeDownloadSize: Int { 8_000_000_000 }  // 8 * 10^9
+    #endif
     static var smallDownloadSize: Int { 1 }
 
     public init(scheme: String, authority: String) {