From e76cf411e3912c8969ea49d5c0b4b8a2545784bc Mon Sep 17 00:00:00 2001 From: Alex Zolotarev Date: Wed, 7 Nov 2012 02:11:05 +0300 Subject: [PATCH] [ios] Fixed corrupted file download by explicit file size checking in all cases --- platform/http_thread_apple.mm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/platform/http_thread_apple.mm b/platform/http_thread_apple.mm index 79a430bd12..7a7c115555 100644 --- a/platform/http_thread_apple.mm +++ b/platform/http_thread_apple.mm @@ -134,7 +134,8 @@ // if it's absent, use Content-Length instead if (sizeOnServer < 0) sizeOnServer = [response expectedContentLength]; - if (sizeOnServer > 0 & m_expectedSize != sizeOnServer) + // We should always check returned size, even if it's invalid (-1) + if (m_expectedSize != sizeOnServer) { LOG(LWARNING, ("Canceling download - server replied with invalid size", @@ -143,6 +144,7 @@ m_callback->OnFinish(-2, m_begRange, m_endRange); return; } + // @TODO Else display content to user - router is redirecting us somewhere } } else