Index: Source/core/rendering/InlineIterator.h |
diff --git a/Source/core/rendering/InlineIterator.h b/Source/core/rendering/InlineIterator.h |
index 87c42c4e4a34ff007d0ce306ed1c47d416f8e689..3e7a69e74605034ade5ee763c5ab86086f8bafd4 100644 |
--- a/Source/core/rendering/InlineIterator.h |
+++ b/Source/core/rendering/InlineIterator.h |
@@ -649,7 +649,11 @@ inline void InlineBidiResolver::appendRun() |
if (isEndOfLine) |
m_reachedEndOfLine = true; |
- m_eor.increment(); |
+ // If isolateTrack is inIsolate, the next |start of run| can not be the current isolated renderer. |
+ if (isolateTracker.inIsolate()) |
+ m_eor.moveTo(bidiNextSkippingEmptyInlines(m_eor.root(), m_eor.object()), 0); |
+ else |
+ m_eor.increment(); |
m_sor = m_eor; |
} |