Chromium Code Reviews| Index: src/mark-compact.cc |
| diff --git a/src/mark-compact.cc b/src/mark-compact.cc |
| index 7eeb244df0d8d64bc72b37c1efe4030ad32b455d..5b4dacb6995c92506147aeb1ded24aac61d0913e 100644 |
| --- a/src/mark-compact.cc |
| +++ b/src/mark-compact.cc |
| @@ -2146,7 +2146,10 @@ void MarkCompactCollector::MarkStringTable(RootMarkingVisitor* visitor) { |
| StringTable* string_table = heap()->string_table(); |
| // Mark the string table itself. |
| MarkBit string_table_mark = Marking::MarkBitFrom(string_table); |
| - SetMark(string_table, string_table_mark); |
| + if (!string_table_mark.Get()) { |
| + // String table could have already been marked via handle scope iteration. |
|
Yang
2014/04/23 15:17:46
I would rewrite the comment to "...been marked by
Igor Sheludko
2014/04/23 15:44:15
Done.
|
| + SetMark(string_table, string_table_mark); |
| + } |
| // Explicitly mark the prefix. |
| string_table->IteratePrefix(visitor); |
| ProcessMarkingDeque(); |