Skip to content

Commit 5858c83

Browse files
Don't prefetch Android res images with int ids (#53493)
Summary: Pull Request resolved: #53493 Changelog: [Internal] Don't prefetch local images shipped with the app Reviewed By: lenaic Differential Revision: D81200872 fbshipit-source-id: 8578b1be2d92e88a618dac5f2a27ba7c4484fa88
1 parent a2c6a3e commit 5858c83

File tree

1 file changed

+12
-2
lines changed
  • packages/react-native/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager

1 file changed

+12
-2
lines changed

packages/react-native/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@
1212

1313
namespace facebook::react {
1414

15+
namespace {
16+
17+
constexpr inline bool isInteger(const std::string& str) {
18+
return str.find_first_not_of("0123456789") == std::string::npos;
19+
}
20+
21+
} // namespace
22+
1523
ImageManager::ImageManager(
1624
const std::shared_ptr<const ContextContainer>& contextContainer)
1725
: self_(new ImageFetcher(contextContainer)) {}
@@ -26,8 +34,10 @@ ImageRequest ImageManager::requestImage(
2634
const ImageRequestParams& imageRequestParams,
2735
Tag tag) const {
2836
if (ReactNativeFeatureFlags::enableImagePrefetchingAndroid()) {
29-
return static_cast<ImageFetcher*>(self_)->requestImage(
30-
imageSource, surfaceId, imageRequestParams, tag);
37+
if (!isInteger(imageSource.uri)) {
38+
return static_cast<ImageFetcher*>(self_)->requestImage(
39+
imageSource, surfaceId, imageRequestParams, tag);
40+
}
3141
}
3242
return {imageSource, nullptr, {}};
3343
}

0 commit comments

Comments
 (0)