Skip to content

Commit 9f00d1b

Browse files
zichanggcommit-bot@chromium.org
authored andcommitted
[VM] Ensure Top level class is finalized for loadedscripts in library
The breakpoints sent from IDE will be checked with existing scripts. Because the loadedscripts() doesn't contain the scripts info for part/part of. Then the breakpoint will be considerred as a latent breakpoint and didn't get resolved later. The solution is to finalize the toplevel class before loadedscripts() uses Dictionary iterator. Bug: #35859 Change-Id: I90b67ee9e9e6afe2556ca806cdd87eb5661304a8 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97402 Reviewed-by: Alexander Markov <[email protected]> Commit-Queue: Zichang Guo <[email protected]>
1 parent 24e5f91 commit 9f00d1b

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

runtime/vm/object.cc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10267,6 +10267,7 @@ RawArray* Library::LoadedScripts() const {
1026710267
Object& entry = Object::Handle();
1026810268
Class& cls = Class::Handle();
1026910269
Script& owner_script = Script::Handle();
10270+
EnsureTopLevelClassIsFinalized();
1027010271
DictionaryIterator it(*this);
1027110272
while (it.HasNext()) {
1027210273
entry = it.GetNext();

0 commit comments

Comments
 (0)