From b3ac5f06d235dff5f879e4eaa5a4366096cf5c34 Mon Sep 17 00:00:00 2001 From: Adam Ernst Date: Thu, 7 Jul 2016 13:31:19 -0700 Subject: [PATCH] Close RAM bundle as soon as we read the magic number Summary: No need to keep it open; it just makes it harder to reason about error handling. Reviewed By: majak Differential Revision: D3518200 fbshipit-source-id: dc1af6eb0f75de7e9f73513ed1dd522048f76670 --- React/Base/RCTJavaScriptLoader.m | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/React/Base/RCTJavaScriptLoader.m b/React/Base/RCTJavaScriptLoader.m index 8b6b0b750..8ea430702 100755 --- a/React/Base/RCTJavaScriptLoader.m +++ b/React/Base/RCTJavaScriptLoader.m @@ -56,8 +56,9 @@ RCT_NOT_IMPLEMENTED(- (instancetype)init) } uint32_t magicNumber; - if (fread(&magicNumber, sizeof(magicNumber), 1, bundle) != 1) { - fclose(bundle); + size_t readResult = fread(&magicNumber, sizeof(magicNumber), 1, bundle); + fclose(bundle); + if (readResult != 1) { onComplete(RCTErrorWithMessage(@"Error reading bundle"), source, 0); return; } @@ -81,7 +82,6 @@ RCT_NOT_IMPLEMENTED(- (instancetype)init) sourceLength = source.length; } - fclose(bundle); onComplete(error, source, sourceLength); }); return;