Skip to content

[Impeller] Call glfwTerminate during global test environment teardown if a playground test called glfwInit#189523

Merged
auto-submit[bot] merged 2 commits into
flutter:masterfrom
jason-simmons:playground_glfw_terminate
Jul 15, 2026
Merged

[Impeller] Call glfwTerminate during global test environment teardown if a playground test called glfwInit#189523
auto-submit[bot] merged 2 commits into
flutter:masterfrom
jason-simmons:playground_glfw_terminate

Conversation

@jason-simmons

Copy link
Copy Markdown
Member

glfwTerminate will call eglTerminate, which will execute an orderly shutdown of ANGLE before the test process exits.

… if a playground test called glfwInit

glfwTerminate will call eglTerminate, which will execute an orderly
shutdown of ANGLE before the test process exits.
@jason-simmons
jason-simmons requested a review from flar July 15, 2026 18:59
@flutter-dashboard flutter-dashboard Bot added the CICD Run CI/CD label Jul 15, 2026
@github-actions github-actions Bot added engine flutter/engine related. See also e: labels. e: impeller Impeller rendering backend issues and features requests labels Jul 15, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

This pull request introduces tracking for GLFW initialization status in the Playground class using a static atomic boolean, enabling proper cleanup via OnTearDownTestEnvironment during test teardown. Feedback recommends using glfw_initialized_.exchange(false) to ensure the teardown process is idempotent and thread-safe, and suggests replacing std::atomic_bool with std::atomic to comply with modern C++ standards.

Comment thread engine/src/flutter/impeller/playground/playground.cc
Comment thread engine/src/flutter/impeller/playground/playground.h Outdated
Comment thread engine/src/flutter/impeller/playground/playground.cc Outdated

@flar flar left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@jason-simmons jason-simmons added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 15, 2026
@auto-submit
auto-submit Bot added this pull request to the merge queue Jul 15, 2026
Merged via the queue into flutter:master with commit f65eec9 Jul 15, 2026
20 checks passed
@flutter-dashboard flutter-dashboard Bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jul 15, 2026
auto-submit Bot pushed a commit to flutter/packages that referenced this pull request Jul 18, 2026
Roll Flutter from fc1ad955f164 to 8005793c3562 (40 revisions)

flutter/flutter@fc1ad95...8005793

2026-07-18 97480502+b-luk@users.noreply.github.com Remove `LineContents ` experimental AA line shader that is no longer used (flutter/flutter#189619)
2026-07-18 engine-flutter-autoroll@skia.org Roll Skia from 9468e96cc40f to ba90f98535de (8 revisions) (flutter/flutter#189680)
2026-07-17 engine-flutter-autoroll@skia.org Roll Dart SDK from 33e4b71e984b to 666e1e2133b7 (2 revisions) (flutter/flutter#189673)
2026-07-17 chris@bracken.jp [iOS] Fix potential use-after-free in a11y bridge channel handler (flutter/flutter#189637)
2026-07-17 269567208+reidbaker-agent@users.noreply.github.com Migrate dev/tools skill validation to new dart_skills_lint API (flutter/flutter#189626)
2026-07-17 22373191+Hari-07@users.noreply.github.com Add validation for required fields during xcodebuild (flutter/flutter#187772)
2026-07-17 awolff@google.com Upgrade android_hardware_smoke_test CI to run instrumented tests (flutter/flutter#189390)
2026-07-17 engine-flutter-autoroll@skia.org Roll Dart SDK from 0867cb1897b5 to 33e4b71e984b (1 revision) (flutter/flutter#189661)
2026-07-17 engine-flutter-autoroll@skia.org Roll Skia from 702c3e790232 to 9468e96cc40f (1 revision) (flutter/flutter#189660)
2026-07-17 engine-flutter-autoroll@skia.org Roll Packages from 9f95026 to 4fdc766 (11 revisions) (flutter/flutter#189659)
2026-07-17 engine-flutter-autoroll@skia.org Roll Skia from 2e4a3ae035cd to 702c3e790232 (1 revision) (flutter/flutter#189655)
2026-07-17 bernaferrari2@gmail.com [macOS] Add FlutterPluginRegistrar.valuePublished(byPlugin:) just like iOS (flutter/flutter#189614)
2026-07-17 engine-flutter-autoroll@skia.org Roll Dart SDK from c69d138c9646 to 0867cb1897b5 (2 revisions) (flutter/flutter#189649)
2026-07-17 engine-flutter-autoroll@skia.org Roll Skia from 4f5aca109c87 to 2e4a3ae035cd (3 revisions) (flutter/flutter#189646)
2026-07-17 chris@bracken.jp [iOS] Fix missing nil checks and improve SemanticsObject bridge API (flutter/flutter#189630)
2026-07-17 engine-flutter-autoroll@skia.org Roll Skia from 37c5e6b26aee to 4f5aca109c87 (19 revisions) (flutter/flutter#189638)
2026-07-17 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from lLFbh5kFWbUGgC9Ek... to NL8xtzr8cxr5E8r8E... (flutter/flutter#189632)
2026-07-17 ishaquehassan@gmail.com Add blendMode parameter to RawImage and RenderImage (flutter/flutter#185938)
2026-07-17 1961493+harryterkelsen@users.noreply.github.com [web] Cache WASM network requests in flutter test (flutter/flutter#189623)
2026-07-17 awolff@google.com android_hardware_smoke_tests: Apply semantic line breaks to readme (flutter/flutter#189613)
2026-07-16 codefu@google.com ci(github-actions): resolve zizmor github-env findings in composite flutter actions (flutter/flutter#189602)
2026-07-16 stuartmorgan@google.com Remove obsolete packages analysis flag (flutter/flutter#189525)
2026-07-16 engine-flutter-autoroll@skia.org Roll Dart SDK from e24870ff15bc to c69d138c9646 (2 revisions) (flutter/flutter#189597)
2026-07-16 liyl@google.com [fuchsia][iwyu] Remove transitive include of fuchsia.input.report. (flutter/flutter#188891)
2026-07-16 116356835+AbdeMohlbi@users.noreply.github.com Remove unnecessary value key hack in `key.dart`  (flutter/flutter#189291)
2026-07-16 engine-flutter-autoroll@skia.org Roll Dart SDK from 81306a2ed317 to e24870ff15bc (1 revision) (flutter/flutter#189569)
2026-07-16 flar@google.com [Impeller] Fix atlas growth test (flutter/flutter#189533)
2026-07-16 engine-flutter-autoroll@skia.org Roll Dart SDK from d402ff7c9c84 to 81306a2ed317 (4 revisions) (flutter/flutter#189558)
2026-07-16 magder@google.com Move shared darwin plugin tests into own builder (flutter/flutter#189411)
2026-07-16 engine-flutter-autoroll@skia.org Roll Skia from ab2410bc857c to 37c5e6b26aee (19 revisions) (flutter/flutter#189549)
2026-07-16 chris@bracken.jp [ios] Fix //flutter:unittests build for physical devices (flutter/flutter#189543)
2026-07-16 digvijaysinghiam@gmail.com Fix lower DragTarget not being recognized in overlapping targets (flutter/flutter#188979)
2026-07-16 katelovett@google.com Relocate cupertino samples that were under widgets/ (flutter/flutter#188876)
2026-07-15 chris@bracken.jp [iOS] Migrate DisplayLinkManager to a shared instance (flutter/flutter#189492)
2026-07-15 jason-simmons@users.noreply.github.com [Impeller] Call glfwTerminate during global test environment teardown if a playground test called glfwInit (flutter/flutter#189523)
2026-07-15 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#189515)
2026-07-15 engine-flutter-autoroll@skia.org Roll Packages from ad2eab1 to 9f95026 (8 revisions) (flutter/flutter#189509)
2026-07-15 31859944+LongCatIsLooong@users.noreply.github.com add `@nonVirtual` to `RenderObject.attached`, fix `WidgetTester.hasRunningAnimations` (flutter/flutter#186832)
2026-07-15 jason-simmons@users.noreply.github.com Roll vulkan-deps to 0582f446e54a (flutter/flutter#188524)
2026-07-15 engine-flutter-autoroll@skia.org Roll Dart SDK from 0c408ff6dce9 to d402ff7c9c84 (1 revision) (flutter/flutter#189497)

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
Please CC louisehsu@google.com,stuartmorgan@google.com on the revert to ensure that a human
is aware of the problem.
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD Run CI/CD e: impeller Impeller rendering backend issues and features requests engine flutter/engine related. See also e: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants