Index: runtime/vm/parser.cc |
=================================================================== |
--- runtime/vm/parser.cc (revision 37101) |
+++ runtime/vm/parser.cc (working copy) |
@@ -136,16 +136,12 @@ |
void ParsedFunction::AddDeferredPrefix(const LibraryPrefix& prefix) { |
ASSERT(prefix.is_deferred_load()); |
ASSERT(!prefix.is_loaded()); |
- if (deferred_prefixes_ == NULL) { |
- deferred_prefixes_ = |
- &GrowableObjectArray::ZoneHandle(GrowableObjectArray::New()); |
- } |
- for (intptr_t i = 0; i < deferred_prefixes_->Length(); i++) { |
- if (deferred_prefixes_->At(i) == prefix.raw()) { |
+ for (intptr_t i = 0; i < deferred_prefixes_->length(); i++) { |
+ if ((*deferred_prefixes_)[i]->raw() == prefix.raw()) { |
return; |
} |
} |
- deferred_prefixes_->Add(prefix); |
+ deferred_prefixes_->Add(&LibraryPrefix::ZoneHandle(I, prefix.raw())); |
Ivan Posva
2014/06/07 00:31:14
Why do you have to get a new ZoneHandle here? I do
srdjan
2014/06/12 20:25:46
Generally: if a handle's lifetime escapes the scop
|
} |