[video_player] Fix appleos crash when set negative video composition
iOS/macOS crash when set negative video composition, we should catch this exception.
Fixes https://github.com/flutter/flutter/issues/151031
Pre-launch Checklist
- [x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
- [x] I read the Tree Hygiene page, which explains my responsibilities.
- [x] I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages repo does use
dart format.) - [x] I signed the CLA.
- [x] The title of the PR starts with the name of the package surrounded by square brackets, e.g.
[shared_preferences] - [x] I linked to at least one issue that this PR fixes in the description above.
- [x] I updated
pubspec.yamlwith an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes. - [x] I updated
CHANGELOG.mdto add a description of the change, following repository CHANGELOG style, or this PR is exempt from CHANGELOG changes. - [x] I updated/added relevant documentation (doc comments with
///). - [x] I added new tests to check the change I am making, or this PR is test-exempt.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel on Discord.
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact "@test-exemption-reviewer" in the #hackers channel in Chat (don't just cc them here, they won't see it! Use Discord!).
If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?
Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
View this failed invocation of the CLA check for more information.
For the most up to date status, view the checks section at the bottom of the pull request.
Thanks for the contribution!
- [x] I added new tests to check the change I am making, or this PR is test-exempt.
Where is this new test? The problem was found in the crash log report, so there was no video source to write a replay test, I don't know what kind of test to write.
The problem was found in the crash log report, so there was no video source to write a replay test, I don't know what kind of test to write.
If we don't know enough to construct a plausible test case that would reproduce the exception in a test, then we don't know enough to fix the issue.
If we do, then then the test should do that.
Either way, please don't check a checkbox for something you haven't actually done, as it makes things more difficult for reviewers. The checklist should reflect the actual state of the PR.
The problem was found in the crash log report, so there was no video source to write a replay test, I don't know what kind of test to write.
If we don't know enough to construct a plausible test case that would reproduce the exception in a test, then we don't know enough to fix the issue.
If we do, then then the test should do that.
Either way, please don't check a checkbox for something you haven't actually done, as it makes things more difficult for reviewers. The checklist should reflect the actual state of the PR.
Thank you, i miss something.
From triage: @lxhlzyh are you still planning on updating this PR per the discussion above?
Thank you for your contribution. I'm going to close this PR for now since there are outstanding comments, just to get this off our PR review queue. Please don't hesitate to submit a new PR if you have the time to address the review comments. Thanks!