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

Unified Diff: Source/core/rendering/BidiRunForLine.cpp

Issue 433923003: Revert BidiResolver::createBidiRunsForLine changes (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « LayoutTests/fast/text/bidi-replace-runs-crash-expected.txt ('k') | Source/core/rendering/InlineIterator.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/rendering/BidiRunForLine.cpp
diff --git a/Source/core/rendering/BidiRunForLine.cpp b/Source/core/rendering/BidiRunForLine.cpp
index 029c344324d406d2f749387999974bff4ca7053c..9032966f7090d6e580bb424ef55d18c423062721 100644
--- a/Source/core/rendering/BidiRunForLine.cpp
+++ b/Source/core/rendering/BidiRunForLine.cpp
@@ -133,9 +133,12 @@ void constructBidiRunsForLine(InlineBidiResolver& topResolver,
VisualDirectionOverride override, bool previousLineBrokeCleanly,
bool isNewUBAParagraph)
{
+ // FIXME: We should pass a BidiRunList into createBidiRunsForLine instead
+ // of the resolver owning the runs.
+ ASSERT(&topResolver.runs() == &bidiRuns);
ASSERT(topResolver.position() != endOfLine);
RenderObject* currentRoot = topResolver.position().root();
- topResolver.createBidiRunsForLine(endOfLine, bidiRuns, override,
+ topResolver.createBidiRunsForLine(endOfLine, override,
previousLineBrokeCleanly);
while (!topResolver.isolatedRuns().isEmpty()) {
@@ -158,7 +161,6 @@ void constructBidiRunsForLine(InlineBidiResolver& topResolver,
ASSERT(isolatedInline);
InlineBidiResolver isolatedResolver;
- BidiRunList<BidiRun> isolatedRuns;
LineMidpointState& isolatedLineMidpointState =
isolatedResolver.midpointState();
isolatedLineMidpointState = topResolver.midpointStateForIsolatedRun(
@@ -190,14 +192,12 @@ void constructBidiRunsForLine(InlineBidiResolver& topResolver,
// FIXME: What should end and previousLineBrokeCleanly be?
// rniwa says previousLineBrokeCleanly is just a WinIE hack and could
// always be false here?
- isolatedResolver.createBidiRunsForLine(endOfLine,
- isolatedRuns,
- NoVisualOverride,
+ isolatedResolver.createBidiRunsForLine(endOfLine, NoVisualOverride,
previousLineBrokeCleanly);
- ASSERT(isolatedRuns.runCount());
- if (isolatedRuns.runCount())
- bidiRuns.replaceRunWithRuns(isolatedRun, isolatedRuns);
+ ASSERT(isolatedResolver.runs().runCount());
+ if (isolatedResolver.runs().runCount())
+ bidiRuns.replaceRunWithRuns(isolatedRun, isolatedResolver.runs());
// If we encountered any nested isolate runs, just move them
// to the top resolver's list for later processing.
« no previous file with comments | « LayoutTests/fast/text/bidi-replace-runs-crash-expected.txt ('k') | Source/core/rendering/InlineIterator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698