Skip to content

[camera_avfoundation] dealloc camera on dispose #7211

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Aug 4, 2024

Conversation

misos1
Copy link
Contributor

@misos1 misos1 commented Jul 24, 2024

When is camera disposed in disposeCamera it calls close and leaves _camera untouched so after another call to sessionQueueCreateCameraWithName it calls close second time and only here is _camera disposed by assigning new value into that variable. Calling close 2x may be unexpected and prone to later errors if someone adds here something which expects that it will be called only once. Also having dangling _camera after dispose (without creating new one) can have other unintended consequences although maybe benign for now. For example there is [_motionManager stopAccelerometerUpdates] which is called only in dealloc.

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@misos1 misos1 marked this pull request as ready for review July 24, 2024 20:06
@misos1 misos1 requested a review from hellohuanlin as a code owner July 24, 2024 20:06
Copy link
Contributor

@bparrishMines bparrishMines left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@hellohuanlin for secondary review

@bparrishMines bparrishMines added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 2, 2024
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Aug 2, 2024
Copy link
Contributor

auto-submit bot commented Aug 2, 2024

auto label is removed for flutter/packages/7211, due to - The status or check suite Linux repo_checks has failed. Please fix the issues identified (or deflake) before re-applying this label.

@bparrishMines bparrishMines added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 2, 2024
Copy link
Contributor

auto-submit bot commented Aug 2, 2024

auto label is removed for flutter/packages/7211, due to - The status or check suite Mac_arm64 ios_platform_tests_shard_1 master has failed. Please fix the issues identified (or deflake) before re-applying this label.

@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Aug 2, 2024
@bparrishMines bparrishMines added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 4, 2024
@auto-submit auto-submit bot merged commit 299e616 into flutter:main Aug 4, 2024
76 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 5, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Aug 5, 2024
flutter/packages@cc9ff47...82e8d1e

2024-08-04 engine-flutter-autoroll@skia.org Manual roll Flutter from f10a497 to cbfb222 (23 revisions) (flutter/packages#7298)
2024-08-04 30872003+misos1@users.noreply.github.com [camera_avfoundation] dealloc camera on dispose (flutter/packages#7211)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 4ff9462 to f10a497 (22 revisions) (flutter/packages#7297)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 85960d2 to 4ff9462 (45 revisions) (flutter/packages#7296)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 9d5ede0 to 85960d2 (24 revisions) (flutter/packages#7295)
2024-08-02 stuartmorgan@google.com Roll to 9d5ede0, disabling impeller for google_maps_flutter_android (flutter/packages#7294)
2024-08-02 30872003+misos1@users.noreply.github.com [camera_avfoundation] fix stopVideoRecording waiting indefinitely and video lag at start (flutter/packages#7065)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
TytaniumDev pushed a commit to TytaniumDev/flutter that referenced this pull request Aug 7, 2024
flutter/packages@cc9ff47...82e8d1e

2024-08-04 engine-flutter-autoroll@skia.org Manual roll Flutter from f10a497 to cbfb222 (23 revisions) (flutter/packages#7298)
2024-08-04 30872003+misos1@users.noreply.github.com [camera_avfoundation] dealloc camera on dispose (flutter/packages#7211)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 4ff9462 to f10a497 (22 revisions) (flutter/packages#7297)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 85960d2 to 4ff9462 (45 revisions) (flutter/packages#7296)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 9d5ede0 to 85960d2 (24 revisions) (flutter/packages#7295)
2024-08-02 stuartmorgan@google.com Roll to 9d5ede0, disabling impeller for google_maps_flutter_android (flutter/packages#7294)
2024-08-02 30872003+misos1@users.noreply.github.com [camera_avfoundation] fix stopVideoRecording waiting indefinitely and video lag at start (flutter/packages#7065)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Buchimi pushed a commit to Buchimi/flutter that referenced this pull request Sep 2, 2024
flutter/packages@cc9ff47...82e8d1e

2024-08-04 engine-flutter-autoroll@skia.org Manual roll Flutter from f10a497 to cbfb222 (23 revisions) (flutter/packages#7298)
2024-08-04 30872003+misos1@users.noreply.github.com [camera_avfoundation] dealloc camera on dispose (flutter/packages#7211)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 4ff9462 to f10a497 (22 revisions) (flutter/packages#7297)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 85960d2 to 4ff9462 (45 revisions) (flutter/packages#7296)
2024-08-03 engine-flutter-autoroll@skia.org Manual roll Flutter from 9d5ede0 to 85960d2 (24 revisions) (flutter/packages#7295)
2024-08-02 stuartmorgan@google.com Roll to 9d5ede0, disabling impeller for google_maps_flutter_android (flutter/packages#7294)
2024-08-02 30872003+misos1@users.noreply.github.com [camera_avfoundation] fix stopVideoRecording waiting indefinitely and video lag at start (flutter/packages#7065)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App p: camera platform-ios platform-macos
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants