fix: Prevent crashes when canceling download tasks
Description
This PR addresses a critical issue where the app crashes when attempting to cancel certain tasks within the PDF component. The crash occurs because the cancel method is called on lastRNBFTask without first checking if it is a function.
Problem
When the component updates, unmounts, or when a new download is initiated, the app attempts to cancel any ongoing task represented by lastRNBFTask. However, if lastRNBFTask.cancel is not a function, this leads to an uncaught exception, causing the app to crash.
Solution
Safety checks have been implemented to ensure that lastRNBFTask.cancel is a function before any attempt is made to call it. The existing checks for the presence of lastRNBFTask have been retained, and the cleanup behavior (setting lastRNBFTask to null) has been preserved.
Screenshots
| componentDidUpdate | componentWillUnmount |
|---|---|
We are experiencing same issue
when is it possible to merge this, facing the same issue
@wonday You could check this out
@wonday any chance this could get merged? it's a minimal change and fixes a crash that we've been experiencing
@wonday can you please check?