Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@elliette
Copy link
Member

@elliette elliette commented Apr 9, 2025

Fixes #9124

I still need to do some testing to make sure this doesn't introduce a regression to our breakpoint handling (although I think if the VM Service sends a resume event it should be safe for us to call resume as well).

// We check for a resume event because package:dwds sends a resume event
// after a hot-restart. See:
// https://github.com/flutter/devtools/issues/9124
EventKind.kResume,
Copy link
Member

Choose a reason for hiding this comment

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

We should make sure this doesn't cause issues for non-web apps.

Copy link
Member Author

Choose a reason for hiding this comment

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

Agreed! Testing now

Copy link
Member Author

Choose a reason for hiding this comment

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

Confirmed non-web apps still work as expected. Also looking into what is required to reenable the debugger panel integration test on web, since I believe that would have caught this regression: #7732

if ([
EventKind.kPauseStart,
EventKind.kPausePostRequest,
// We check for a resume event because package:dwds sends a resume event
Copy link
Contributor

Choose a reason for hiding this comment

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

Do you happen to know why we do this? This feels like a bug.

Copy link
Member Author

Choose a reason for hiding this comment

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

A very good question (that could perhaps also be asked about other related code, for example why is the notifyPausedAtStart method not notifying), but from my investigation:

(For reference, current code pointers here: #9124 (comment))

So dwds is sending the Resume event to say "the isolate has been created and resumed." At least that is my understanding.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, I think this is a bug. Can you file an issue against DWDS and reference it here?

Copy link
Member Author

Choose a reason for hiding this comment

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

@elliette elliette requested a review from a team as a code owner April 11, 2025 21:45
@elliette elliette requested review from bkonyi and removed request for a team April 11, 2025 21:45
Copy link
Member

@kenzieschmoll kenzieschmoll left a comment

Choose a reason for hiding this comment

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

LGTM but would like @bkonyi to approve as well.

Copy link
Contributor

@bkonyi bkonyi left a comment

Choose a reason for hiding this comment

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

LGTM overall, but let's file a bug against DWDS to see if we can fix this behavior there since it's not consistent with what the VM does.

if ([
EventKind.kPauseStart,
EventKind.kPausePostRequest,
// We check for a resume event because package:dwds sends a resume event
Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, I think this is a bug. Can you file an issue against DWDS and reference it here?

@elliette elliette merged commit 75f58db into flutter:master Apr 14, 2025
41 checks passed
hrajwade96 pushed a commit to hrajwade96/devtools that referenced this pull request Sep 2, 2025
hrajwade96 pushed a commit to hrajwade96/devtools that referenced this pull request Sep 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Triggering a hot-restart causes a web app to freeze

3 participants