diff -urN chromium-26.0.1410.46.orig/third_party/WebKit/Source/WebCore/platform/graphics/harfbuzz/HarfBuzzShaper.cpp chromium-26.0.1410.46/third_party/WebKit/Source/WebCore/platform/graphics/harfbuzz/HarfBuzzShaper.cpp --- chromium-26.0.1410.46.orig/third_party/WebKit/Source/WebCore/platform/graphics/harfbuzz/HarfBuzzShaper.cpp 2013-04-17 18:09:26.031613138 +0400 +++ chromium-26.0.1410.46/third_party/WebKit/Source/WebCore/platform/graphics/harfbuzz/HarfBuzzShaper.cpp 2013-04-17 18:12:13.263019259 +0400 @@ -329,6 +329,9 @@ hb_buffer_set_script(harfBuzzBuffer.get(), currentRun->script()); if (shouldSetDirection) hb_buffer_set_direction(harfBuzzBuffer.get(), currentRun->rtl() ? HB_DIRECTION_RTL : HB_DIRECTION_LTR); + else + // Leaving direction to HarfBuzz to guess is *really* bad, but will do for now. + hb_buffer_guess_segment_properties(harfBuzzBuffer.get()); // Add a space as pre-context to the buffer. This prevents showing dotted-circle // for combining marks at the beginning of runs.