Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(271)

Issue 2366463002: Fix stepping over await statements (Closed)

Created:
4 years, 3 months ago by hausner
Modified:
4 years, 3 months ago
Reviewers:
Cutch
CC:
reviews_dartlang.org, turnidge, rmacnak, vm-dev_dartlang.org
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Fix stepping over await statements When async-stepping over an await statement that follows a previous async-step command, ensure that the synthetic breakpoint at the beginning of the async closure is not accidentally deleted. Removing a test that depends on minute details of the internal implementation of async-step commands. Adding new test that checks for multiple consecutive async-step commands. Note that debugger.cc seems to contain a memory leak. Breakpoint objects are not deleted (deallocated) when RemoveBreakpoint() is called. Will address this in a separate CL. BUG=#27238 R=johnmccutchan@google.com Committed: https://github.com/dart-lang/sdk/commit/74e779d4fecf3f15802895b8b10b7692316b0f3b

Patch Set 1 #

Patch Set 2 : wip #

Total comments: 4

Patch Set 3 : Variant: create new breakpoint on each async step command #

Patch Set 4 : Merge branch 'master' into deb #

Unified diffs Side-by-side diffs Delta from patch set Stats (+80 lines, -171 lines) Patch
A + runtime/observatory/tests/service/issue_27238_test.dart View 1 chunk +20 lines, -25 lines 0 comments Download
M runtime/observatory/tests/service/service_test_common.dart View 2 chunks +39 lines, -0 lines 0 comments Download
M runtime/observatory/tests/service/step_over_await_test.dart View 1 chunk +11 lines, -142 lines 0 comments Download
M runtime/vm/debugger.cc View 1 2 1 chunk +10 lines, -4 lines 0 comments Download

Messages

Total messages: 15 (3 generated)
hausner
4 years, 3 months ago (2016-09-21 23:31:36 UTC) #3
Cutch
I'm wondering if we can preserve the old breakpoint behaviour while still fixing this bug. ...
4 years, 3 months ago (2016-09-21 23:43:46 UTC) #4
hausner
See comment/question https://codereview.chromium.org/2366463002/diff/20001/runtime/vm/debugger.cc File runtime/vm/debugger.cc (right): https://codereview.chromium.org/2366463002/diff/20001/runtime/vm/debugger.cc#newcode382 runtime/vm/debugger.cc:382: // If the debugger is paused after ...
4 years, 3 months ago (2016-09-21 23:59:29 UTC) #5
Cutch
On 2016/09/21 23:59:29, hausner wrote: > See comment/question > > https://codereview.chromium.org/2366463002/diff/20001/runtime/vm/debugger.cc > File runtime/vm/debugger.cc (right): ...
4 years, 3 months ago (2016-09-22 15:49:07 UTC) #6
hausner
Maybe we should discuss in person tomorrow. I don't see how there can be multiple ...
4 years, 3 months ago (2016-09-22 15:54:55 UTC) #7
hausner
Here is a fix that creates a new distinctive breakpoint (with new id) for each ...
4 years, 3 months ago (2016-09-22 18:32:43 UTC) #8
Cutch
On 2016/09/22 18:32:43, hausner wrote: > Here is a fix that creates a new distinctive ...
4 years, 3 months ago (2016-09-22 18:36:12 UTC) #9
Cutch
I was thinking about your comment about how there couldn't be multiple breakpoints for the ...
4 years, 3 months ago (2016-09-22 18:40:43 UTC) #10
hausner
Yes, the old step_over_await_test runs with this version of the change. However, I think that ...
4 years, 3 months ago (2016-09-22 20:03:00 UTC) #11
Cutch
lgtm
4 years, 3 months ago (2016-09-22 20:28:05 UTC) #12
hausner
Thank you.
4 years, 3 months ago (2016-09-22 21:01:24 UTC) #13
hausner
4 years, 3 months ago (2016-09-22 21:06:29 UTC) #15
Message was sent while issue was closed.
Committed patchset #4 (id:60001) manually as
74e779d4fecf3f15802895b8b10b7692316b0f3b (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698