Skip to content

RNTester: Crash loading <Image> page #3738

@kmelmon

Description

@kmelmon

The page in RNTester is having issues and crashes when you try to load it.

Callstack to the crash:

React.UWP.dll!winrt::to_hresult() Line 4298	C++
React.UWP.dll!winrt::terminate() Line 4372	C++
React.UWP.dll!std::experimental::coroutine_traits<winrt::fire_and_forget,react::uwp::ReactImage *,react::uwp::ImageSource>::promise_type::unhandled_exception() Line 7942	C++

React.UWP.dll!react::uwp::ReactImage::Source$_ResumeCoro$2() Line 112 C++
React.UWP.dll!react::uwp::ReactImage::Source$_InitCoro$1() Line 112 C++
React.UWP.dll!react::uwp::ReactImage::Source(react::uwp::ImageSource source) Line 112 C++
React.UWP.dll!react::uwp::ImageViewManager::setSource(winrt::Windows::UI::Xaml::Controls::Canvas canvas, const folly::dynamic & data) Line 162 C++
React.UWP.dll!react::uwp::ImageViewManager::UpdateProperties(react::uwp::ShadowNodeBase * nodeToUpdate, const folly::dynamic & reactDiffMap) Line 124 C++
React.UWP.dll!react::uwp::ShadowNodeBase::updateProperties(const folly::dynamic && props) Line 28 C++
React.UWP.dll!facebook::react::UIManager::createView(__int64 tag, std::string && className, __int64 __formal, folly::dynamic && props) Line 260 C++
React.UWP.dll!facebook::react::UIManagerModule::getMethods::__l2::(folly::dynamic args) Line 451 C++

Debug spew says:
Exception thrown at 0x764A35D2 (KernelBase.dll) in Playground.exe: WinRT originate error - 0x80070057 : 'legacy_image is not a valid absolute URI.'.
Exception thrown at 0x764A35D2 in Playground.exe: Microsoft C++ exception: winrt::hresult_invalid_argument at memory location 0x04AFC88C.

Exception thrown at 0x764A35D2 in Playground.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.

Debugging back to the property setter, we have this:

  Name Value Type
sources[0] {uri="legacy_image" method="" bundleRootPath="ms-appx:///Bundle/" ...} react::uwp::ImageSource
  ▶ uri "legacy_image" std::string
  ▶ method "" std::string
  ▶ bundleRootPath "ms-appx:///Bundle/" std::string

So, we have an with a uri of "legacy_image" and that's failing to resolve to a valid resource in our appx package. It looks like we either aren't packaging image resources for RNTester properly, or aren't resolving the URI propertly.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions