// Copyright 2004-present Facebook. All Rights Reserved. #include "JSBigString.h" #include #include #include #include namespace facebook { namespace react { std::unique_ptr JSBigFileString::fromPath(const std::string& sourceURL) { int fd = ::open(sourceURL.c_str(), O_RDONLY); folly::checkUnixError(fd, "Could not open file", sourceURL); SCOPE_EXIT { CHECK(::close(fd) == 0); }; struct stat fileInfo; folly::checkUnixError(::fstat(fd, &fileInfo), "fstat on bundle failed."); return folly::make_unique(fd, fileInfo.st_size); } } // namespace react } // namespace facebook