Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@cyanglaz
Copy link
Contributor

@cyanglaz cyanglaz commented May 5, 2020

At the frame when we dynamically change thread config, the canvas is null. Let submit frame return false directly when it happens.

I'm not sure how to test this, any suggestion would be appreciated!

@auto-assign auto-assign bot requested a review from cbracken May 5, 2020 18:59
@cyanglaz cyanglaz requested review from chinmaygarde and iskakaushik and removed request for cbracken May 5, 2020 18:59
Copy link
Member

@chinmaygarde chinmaygarde left a comment

Choose a reason for hiding this comment

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

We should be able to author a unit-test harness for shell/gpu that runs on the host and uses Metal. In fact, I bet a test can go directly in the shell_unittests harness. If you file a bug for this, I can investigate looking into setting this up.

auto submit_callback = [this](const SurfaceFrame& surface_frame, SkCanvas* canvas) -> bool {
TRACE_EVENT0("flutter", "GPUSurfaceMetal::Submit");
if (canvas == nullptr) {
return false;
Copy link
Member

Choose a reason for hiding this comment

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

Nit: Add a DLOG like in the other case of an early return?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

added log and created an issue flutter/flutter#56405

@cyanglaz cyanglaz merged commit c1068de into flutter:master May 6, 2020
@cyanglaz cyanglaz deleted the canvas_null branch May 6, 2020 00:59
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 6, 2020
GaryQian pushed a commit to flutter/flutter that referenced this pull request May 6, 2020
* c2c6ad9 Roll src/third_party/skia 41e377d1baf0..3d311a983bf0 (9 commits) (flutter/engine#18150)

* a0983d3 [web] Add support for ColorFilter on images (flutter/engine#18111)

* 905836d [web] Upgrade the test package to remove the dependency on package_resolver (flutter/engine#18135)

* 0645e93 Manually add dependency for shelf_proxy (flutter/engine#18151)

* d104f87 Roll src/third_party/skia 3d311a983bf0..0cbd58766ace (2 commits) (flutter/engine#18152)

* b1b1df0 Roll fuchsia/sdk/core/mac-amd64 from ERGnT... to c5NQZ... (flutter/engine#18155)

* 8a8cd5d Roll src/third_party/dart 7bb38670d279..1ef444139c4c (22 commits) (flutter/engine#18161)

* c1068de gpu_metal_surface `submitframe` return false when canvas is null (flutter/engine#18154)

* cf13c7f [iOS platform view] fix active_composition_order_ never cleared (flutter/engine#18153)

* 805a887 Add first Linux shell tests (flutter/engine#18159)

* 80c090d Fix path bounds for multiple rects. Implement winding rules (flutter/engine#18165)

* 15752ee Roll src/third_party/skia 0cbd58766ace..e1c0cb3de8ab (8 commits) (flutter/engine#18167)

* c1bd64a Roll src/third_party/skia e1c0cb3de8ab..1e8fb04b29b9 (3 commits) (flutter/engine#18168)

* 6a379cc Roll fuchsia/sdk/core/linux-amd64 from gnNdl... to RpHTv... (flutter/engine#18171)

* 961fa14 Roll src/third_party/dart 1ef444139c4c..8c8249fa0123 (11 commits) (flutter/engine#18172)

* 337ec63 Roll src/third_party/skia 1e8fb04b29b9..c5727d8e34d2 (1 commits) (flutter/engine#18173)

* bc30355 Roll src/third_party/skia c5727d8e34d2..999257d870d7 (5 commits) (flutter/engine#18174)

* c3cd83b Roll fuchsia/sdk/core/mac-amd64 from c5NQZ... to jMJqf... (flutter/engine#18175)

* Updated bin/internal/fuchsia-linux.version

* Updated bin/internal/fuchsia-mac.version
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants