introduce error management when updating render graph #1080
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fixes #1069
while investigating this issue, it seems to be:
I tried fixing it by calling
handle_create_window_events
more often or at the appropriate time, but it's hard due to the fact it has aevent_loop
param.The other way to fix this is to make the render graph more error resilient.
To do this, the
update
function of a node now returns aResult<(),()>
, and the graph will just ignore errors. Similarly, the variouspanic!
calls in the loop have been replaced by awarning!
and abreak
to continue to the next node.If this approach to fix the issue is taken, there is still to do:
Result<(),()>
type should use at least a real error typepanic!
is actually a better behaviour, I'm not sure how to identify them