Skip to content

[web] Gracefully handle empty ui.Vertices #162461

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

Conversation

harryterkelsen
Copy link
Contributor

It is valid to create a ui.Vertices object with empty positions. This fixes Flutter Web so we don't crash when we see an empty ui.Vertices object.

Fixes #160355

Pre-launch Checklist

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

@github-actions github-actions bot added engine flutter/engine repository. See also e: labels. platform-web Web applications specifically labels Jan 30, 2025
@@ -50,6 +50,8 @@ class SurfaceVertices implements ui.Vertices {
return list;
}

bool get isEmpty => positions.isEmpty;
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: There could be several empty things: positions, colors, indices. Just isEmpty doesn't seem specific enough?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Renamed to hasNoPoints for clarity

@harryterkelsen harryterkelsen added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
Copy link
Contributor

auto-submit bot commented Jan 30, 2025

autosubmit label was removed for flutter/flutter/162461, because - The status or check suite Linux linux_unopt has failed. Please fix the issues identified (or deflake) before re-applying this label.

@harryterkelsen harryterkelsen added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
Copy link
Contributor

auto-submit bot commented Jan 30, 2025

autosubmit label was removed for flutter/flutter/162461, because - The status or check suite Mac mac_host_engine has failed. Please fix the issues identified (or deflake) before re-applying this label.

@harryterkelsen harryterkelsen added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
Copy link
Contributor

auto-submit bot commented Jan 30, 2025

autosubmit label was removed for flutter/flutter/162461, because - The status or check suite Linux_android_emu_34 android views has failed. Please fix the issues identified (or deflake) before re-applying this label.

@harryterkelsen harryterkelsen added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 30, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Jan 31, 2025
Merged via the queue into flutter:master with commit 385878e Jan 31, 2025
173 of 174 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jan 31, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 3, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Feb 3, 2025
Roll Flutter from b007899 to 8e2a6fc (61 revisions)

flutter/flutter@b007899...8e2a6fc

2025-02-03 [email protected] Implement hot reload using the DDC library bundle format (flutter/flutter#162498)
2025-02-01 [email protected] [Android] add lint ignores to Flutter JNI. (flutter/flutter#162527)
2025-02-01 [email protected] Fix `Linux docs_publish` running at head (flutter/flutter#162557)
2025-02-01 [email protected] [Flutter GPU] Breaking: Use exceptions for resource creation errors. (flutter/flutter#162104)
2025-02-01 [email protected] [Impeller] Increase conical gradient precision. (flutter/flutter#162543)
2025-01-31 [email protected] Roll pub packages (flutter/flutter#162542)
2025-01-31 [email protected] [web] Gracefully handle empty ui.Vertices (flutter/flutter#162461)
2025-01-31 [email protected] [web] Remove HTML build artifacts (flutter/flutter#162528)
2025-01-31 [email protected] [ Tool ] Remove use of globals from widget-preview commands (flutter/flutter#162522)
2025-01-31 [email protected] Add a special case for the Fuchsia SDK ftl.fidl file in the license script (flutter/flutter#162423)
2025-01-31 [email protected] [Impeller] Remove some unused methods from EntityPassClipStack (flutter/flutter#162478)
2025-01-31 [email protected] Reenable linux_web_engine mac tests on Mac-14 (flutter/flutter#162409)
2025-01-31 [email protected] Fix NavigationRail examples overflow alignment (flutter/flutter#159937)
2025-01-31 [email protected] Roll Skia from c1dc5033e7c9 to 4bdf90faf708 (1 revision) (flutter/flutter#162511)
2025-01-31 [email protected] Roll Skia from e0941791b86e to c1dc5033e7c9 (1 revision) (flutter/flutter#162504)
2025-01-31 [email protected] [Reland] Fix `Tab` linear and elastic animation blink (#162315) (flutter/flutter#162450)
2025-01-31 [email protected] fix syntax error in comment pseudocode (flutter/flutter#162453)
2025-01-31 [email protected] Roll Skia from ec8c632b8c7f to e0941791b86e (1 revision) (flutter/flutter#162502)
2025-01-31 [email protected] Roll Skia from a9af2a74c5ab to ec8c632b8c7f (2 revisions) (flutter/flutter#162496)
2025-01-31 [email protected] Roll pub packages (flutter/flutter#162476)
2025-01-31 [email protected] Document flutter/package deps version policy (flutter/flutter#162492)
2025-01-31 [email protected] Add iOS tool codeowner (flutter/flutter#162167)
2025-01-31 [email protected] Fixed the text aspect ratio (flutter/flutter#162415)
2025-01-31 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Delete `FlutterCommand.usageValues` (#162468)" (flutter/flutter#162494)
2025-01-31 [email protected] Add new web contributors to web triage doc. (flutter/flutter#162420)
2025-01-30 [email protected] Fix the build borked in flutter/flutter#162475. (flutter/flutter#162484)
2025-01-30 [email protected] Roll Skia from e6daf687b558 to a9af2a74c5ab (5 revisions) (flutter/flutter#162474)
2025-01-30 [email protected] Bump `Linux mac_clang_tidy" to 120m timeout (flutter/flutter#162475)
2025-01-30 [email protected] Delete `FlutterCommand.usageValues` (flutter/flutter#162468)
2025-01-30 [email protected] Fixed some floating point inaccuracies in TextContents (flutter/flutter#162351)
2025-01-30 [email protected] Limit number of retries when downloading the Dart SDK on Windows (flutter/flutter#162411)
2025-01-30 [email protected] Add FormField.errorBuilder (flutter/flutter#162255)
2025-01-30 [email protected] Fix `Checkbox` default visual density to meet Material 3 guidelines (flutter/flutter#159081)
2025-01-30 [email protected] [Android] add HC++ platform view class. (flutter/flutter#161829)
2025-01-30 [email protected] Add tests to confirm CupertinoSliverNavigationBar snaps when partially scrolled in .always bottom mode (flutter/flutter#162425)
2025-01-30 [email protected] [Impeller] Disable Vulkan on Emulators. (flutter/flutter#162454)
2025-01-30 [email protected] [FGP Kotlin conversion] Convert `Deeplink` and `IntentFilterCheck` (flutter/flutter#161835)
2025-01-30 [email protected] fix slider semantic label (flutter/flutter#162304)
2025-01-30 [email protected] Roll Skia from f22419dbed05 to e6daf687b558 (37 revisions) (flutter/flutter#162447)
2025-01-30 [email protected] Fix `flutter doctor` instructions displayed when `cmdline-tools` (Android SDK) cannot be found (flutter/flutter#162281)
2025-01-30 [email protected] remove more (simple) usage of package:usage (flutter/flutter#162354)
2025-01-30 [email protected] [Android] HC++ plumbing. (flutter/flutter#162407)
2025-01-30 [email protected] Removes dev dependencies from generated plugin registrant for non-Android platforms (flutter/flutter#161828)
2025-01-30 [email protected] Fix unexpected shown of Scrollbar (flutter/flutter#159386)
2025-01-30 [email protected] Roll package:vm_service to 15.0.0 and package:leak_tracker to 10.0.9 (flutter/flutter#162325)
2025-01-30 [email protected] Roll Fuchsia Test Scripts from r9Dc5VRF6sE3pJH20... to g6IlaYL1_wNmk3zNj... (flutter/flutter#162427)
...
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 21, 2025
androidseb pushed a commit to androidseb/packages that referenced this pull request Jun 8, 2025
Roll Flutter from b007899 to 8e2a6fc (61 revisions)

flutter/flutter@b007899...8e2a6fc

2025-02-03 [email protected] Implement hot reload using the DDC library bundle format (flutter/flutter#162498)
2025-02-01 [email protected] [Android] add lint ignores to Flutter JNI. (flutter/flutter#162527)
2025-02-01 [email protected] Fix `Linux docs_publish` running at head (flutter/flutter#162557)
2025-02-01 [email protected] [Flutter GPU] Breaking: Use exceptions for resource creation errors. (flutter/flutter#162104)
2025-02-01 [email protected] [Impeller] Increase conical gradient precision. (flutter/flutter#162543)
2025-01-31 [email protected] Roll pub packages (flutter/flutter#162542)
2025-01-31 [email protected] [web] Gracefully handle empty ui.Vertices (flutter/flutter#162461)
2025-01-31 [email protected] [web] Remove HTML build artifacts (flutter/flutter#162528)
2025-01-31 [email protected] [ Tool ] Remove use of globals from widget-preview commands (flutter/flutter#162522)
2025-01-31 [email protected] Add a special case for the Fuchsia SDK ftl.fidl file in the license script (flutter/flutter#162423)
2025-01-31 [email protected] [Impeller] Remove some unused methods from EntityPassClipStack (flutter/flutter#162478)
2025-01-31 [email protected] Reenable linux_web_engine mac tests on Mac-14 (flutter/flutter#162409)
2025-01-31 [email protected] Fix NavigationRail examples overflow alignment (flutter/flutter#159937)
2025-01-31 [email protected] Roll Skia from c1dc5033e7c9 to 4bdf90faf708 (1 revision) (flutter/flutter#162511)
2025-01-31 [email protected] Roll Skia from e0941791b86e to c1dc5033e7c9 (1 revision) (flutter/flutter#162504)
2025-01-31 [email protected] [Reland] Fix `Tab` linear and elastic animation blink (#162315) (flutter/flutter#162450)
2025-01-31 [email protected] fix syntax error in comment pseudocode (flutter/flutter#162453)
2025-01-31 [email protected] Roll Skia from ec8c632b8c7f to e0941791b86e (1 revision) (flutter/flutter#162502)
2025-01-31 [email protected] Roll Skia from a9af2a74c5ab to ec8c632b8c7f (2 revisions) (flutter/flutter#162496)
2025-01-31 [email protected] Roll pub packages (flutter/flutter#162476)
2025-01-31 [email protected] Document flutter/package deps version policy (flutter/flutter#162492)
2025-01-31 [email protected] Add iOS tool codeowner (flutter/flutter#162167)
2025-01-31 [email protected] Fixed the text aspect ratio (flutter/flutter#162415)
2025-01-31 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Delete `FlutterCommand.usageValues` (#162468)" (flutter/flutter#162494)
2025-01-31 [email protected] Add new web contributors to web triage doc. (flutter/flutter#162420)
2025-01-30 [email protected] Fix the build borked in flutter/flutter#162475. (flutter/flutter#162484)
2025-01-30 [email protected] Roll Skia from e6daf687b558 to a9af2a74c5ab (5 revisions) (flutter/flutter#162474)
2025-01-30 [email protected] Bump `Linux mac_clang_tidy" to 120m timeout (flutter/flutter#162475)
2025-01-30 [email protected] Delete `FlutterCommand.usageValues` (flutter/flutter#162468)
2025-01-30 [email protected] Fixed some floating point inaccuracies in TextContents (flutter/flutter#162351)
2025-01-30 [email protected] Limit number of retries when downloading the Dart SDK on Windows (flutter/flutter#162411)
2025-01-30 [email protected] Add FormField.errorBuilder (flutter/flutter#162255)
2025-01-30 [email protected] Fix `Checkbox` default visual density to meet Material 3 guidelines (flutter/flutter#159081)
2025-01-30 [email protected] [Android] add HC++ platform view class. (flutter/flutter#161829)
2025-01-30 [email protected] Add tests to confirm CupertinoSliverNavigationBar snaps when partially scrolled in .always bottom mode (flutter/flutter#162425)
2025-01-30 [email protected] [Impeller] Disable Vulkan on Emulators. (flutter/flutter#162454)
2025-01-30 [email protected] [FGP Kotlin conversion] Convert `Deeplink` and `IntentFilterCheck` (flutter/flutter#161835)
2025-01-30 [email protected] fix slider semantic label (flutter/flutter#162304)
2025-01-30 [email protected] Roll Skia from f22419dbed05 to e6daf687b558 (37 revisions) (flutter/flutter#162447)
2025-01-30 [email protected] Fix `flutter doctor` instructions displayed when `cmdline-tools` (Android SDK) cannot be found (flutter/flutter#162281)
2025-01-30 [email protected] remove more (simple) usage of package:usage (flutter/flutter#162354)
2025-01-30 [email protected] [Android] HC++ plumbing. (flutter/flutter#162407)
2025-01-30 [email protected] Removes dev dependencies from generated plugin registrant for non-Android platforms (flutter/flutter#161828)
2025-01-30 [email protected] Fix unexpected shown of Scrollbar (flutter/flutter#159386)
2025-01-30 [email protected] Roll package:vm_service to 15.0.0 and package:leak_tracker to 10.0.9 (flutter/flutter#162325)
2025-01-30 [email protected] Roll Fuchsia Test Scripts from r9Dc5VRF6sE3pJH20... to g6IlaYL1_wNmk3zNj... (flutter/flutter#162427)
...
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
Roll Flutter from b007899 to 8e2a6fc (61 revisions)

flutter/flutter@b007899...8e2a6fc

2025-02-03 [email protected] Implement hot reload using the DDC library bundle format (flutter/flutter#162498)
2025-02-01 [email protected] [Android] add lint ignores to Flutter JNI. (flutter/flutter#162527)
2025-02-01 [email protected] Fix `Linux docs_publish` running at head (flutter/flutter#162557)
2025-02-01 [email protected] [Flutter GPU] Breaking: Use exceptions for resource creation errors. (flutter/flutter#162104)
2025-02-01 [email protected] [Impeller] Increase conical gradient precision. (flutter/flutter#162543)
2025-01-31 [email protected] Roll pub packages (flutter/flutter#162542)
2025-01-31 [email protected] [web] Gracefully handle empty ui.Vertices (flutter/flutter#162461)
2025-01-31 [email protected] [web] Remove HTML build artifacts (flutter/flutter#162528)
2025-01-31 [email protected] [ Tool ] Remove use of globals from widget-preview commands (flutter/flutter#162522)
2025-01-31 [email protected] Add a special case for the Fuchsia SDK ftl.fidl file in the license script (flutter/flutter#162423)
2025-01-31 [email protected] [Impeller] Remove some unused methods from EntityPassClipStack (flutter/flutter#162478)
2025-01-31 [email protected] Reenable linux_web_engine mac tests on Mac-14 (flutter/flutter#162409)
2025-01-31 [email protected] Fix NavigationRail examples overflow alignment (flutter/flutter#159937)
2025-01-31 [email protected] Roll Skia from c1dc5033e7c9 to 4bdf90faf708 (1 revision) (flutter/flutter#162511)
2025-01-31 [email protected] Roll Skia from e0941791b86e to c1dc5033e7c9 (1 revision) (flutter/flutter#162504)
2025-01-31 [email protected] [Reland] Fix `Tab` linear and elastic animation blink (#162315) (flutter/flutter#162450)
2025-01-31 [email protected] fix syntax error in comment pseudocode (flutter/flutter#162453)
2025-01-31 [email protected] Roll Skia from ec8c632b8c7f to e0941791b86e (1 revision) (flutter/flutter#162502)
2025-01-31 [email protected] Roll Skia from a9af2a74c5ab to ec8c632b8c7f (2 revisions) (flutter/flutter#162496)
2025-01-31 [email protected] Roll pub packages (flutter/flutter#162476)
2025-01-31 [email protected] Document flutter/package deps version policy (flutter/flutter#162492)
2025-01-31 [email protected] Add iOS tool codeowner (flutter/flutter#162167)
2025-01-31 [email protected] Fixed the text aspect ratio (flutter/flutter#162415)
2025-01-31 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Delete `FlutterCommand.usageValues` (#162468)" (flutter/flutter#162494)
2025-01-31 [email protected] Add new web contributors to web triage doc. (flutter/flutter#162420)
2025-01-30 [email protected] Fix the build borked in flutter/flutter#162475. (flutter/flutter#162484)
2025-01-30 [email protected] Roll Skia from e6daf687b558 to a9af2a74c5ab (5 revisions) (flutter/flutter#162474)
2025-01-30 [email protected] Bump `Linux mac_clang_tidy" to 120m timeout (flutter/flutter#162475)
2025-01-30 [email protected] Delete `FlutterCommand.usageValues` (flutter/flutter#162468)
2025-01-30 [email protected] Fixed some floating point inaccuracies in TextContents (flutter/flutter#162351)
2025-01-30 [email protected] Limit number of retries when downloading the Dart SDK on Windows (flutter/flutter#162411)
2025-01-30 [email protected] Add FormField.errorBuilder (flutter/flutter#162255)
2025-01-30 [email protected] Fix `Checkbox` default visual density to meet Material 3 guidelines (flutter/flutter#159081)
2025-01-30 [email protected] [Android] add HC++ platform view class. (flutter/flutter#161829)
2025-01-30 [email protected] Add tests to confirm CupertinoSliverNavigationBar snaps when partially scrolled in .always bottom mode (flutter/flutter#162425)
2025-01-30 [email protected] [Impeller] Disable Vulkan on Emulators. (flutter/flutter#162454)
2025-01-30 [email protected] [FGP Kotlin conversion] Convert `Deeplink` and `IntentFilterCheck` (flutter/flutter#161835)
2025-01-30 [email protected] fix slider semantic label (flutter/flutter#162304)
2025-01-30 [email protected] Roll Skia from f22419dbed05 to e6daf687b558 (37 revisions) (flutter/flutter#162447)
2025-01-30 [email protected] Fix `flutter doctor` instructions displayed when `cmdline-tools` (Android SDK) cannot be found (flutter/flutter#162281)
2025-01-30 [email protected] remove more (simple) usage of package:usage (flutter/flutter#162354)
2025-01-30 [email protected] [Android] HC++ plumbing. (flutter/flutter#162407)
2025-01-30 [email protected] Removes dev dependencies from generated plugin registrant for non-Android platforms (flutter/flutter#161828)
2025-01-30 [email protected] Fix unexpected shown of Scrollbar (flutter/flutter#159386)
2025-01-30 [email protected] Roll package:vm_service to 15.0.0 and package:leak_tracker to 10.0.9 (flutter/flutter#162325)
2025-01-30 [email protected] Roll Fuchsia Test Scripts from r9Dc5VRF6sE3pJH20... to g6IlaYL1_wNmk3zNj... (flutter/flutter#162427)
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
engine flutter/engine repository. See also e: labels. platform-web Web applications specifically
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Creating an empty Vertices object causes an exception on web (canvaskit)
2 participants