⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 102190 in webkit


Ignore:
Timestamp:
Dec 6, 2011, 4:38:35 PM (15 years ago)
Author:
bashi@chromium.org
Message:

[Chromium] unknown characters symbol on \n in complex script text (RTL and LTR)
https://bugs.webkit.org/show_bug.cgi?id=73806

Reviewed by Tony Chang.

Source/WebCore:

Sets fMergeNeutralItems to 1 instead of merging script items based on their tags.

Tests: platform/chromium/fast/text/international/chromium-complex-text-non-printable-expected.html

platform/chromium/fast/text/international/chromium-complex-text-non-printable.html

  • platform/graphics/chromium/UniscribeHelper.cpp:

(WebCore::UniscribeHelper::fillRuns): Removed a block which merges script items.

LayoutTests:

Adds a test to ensure the missing glyph doesn't appear on LF in complex text.

  • fast/text/international/chromium-complex-text-non-printable-expected.html: Added.
  • fast/text/international/chromium-complex-text-non-printable.html: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r102183 r102190  
     12011-12-06  Kenichi Ishibashi  <bashi@chromium.org>
     2
     3        [Chromium] unknown characters symbol on \n in complex script text (RTL and LTR)
     4        https://bugs.webkit.org/show_bug.cgi?id=73806
     5
     6        Reviewed by Tony Chang.
     7
     8        Adds a test to ensure the missing glyph doesn't appear on LF in complex text.
     9
     10        * fast/text/international/chromium-complex-text-non-printable-expected.html: Added.
     11        * fast/text/international/chromium-complex-text-non-printable.html: Added.
     12
    1132011-12-06  Julien Chaffraix  <jchaffraix@webkit.org>
    214
  • trunk/Source/WebCore/ChangeLog

    r102188 r102190  
     12011-12-06  Kenichi Ishibashi  <bashi@chromium.org>
     2
     3        [Chromium] unknown characters symbol on \n in complex script text (RTL and LTR)
     4        https://bugs.webkit.org/show_bug.cgi?id=73806
     5
     6        Reviewed by Tony Chang.
     7
     8        Sets fMergeNeutralItems to 1 instead of merging script items based on their tags.
     9
     10        Tests: platform/chromium/fast/text/international/chromium-complex-text-non-printable-expected.html
     11               platform/chromium/fast/text/international/chromium-complex-text-non-printable.html
     12
     13        * platform/graphics/chromium/UniscribeHelper.cpp:
     14        (WebCore::UniscribeHelper::fillRuns): Removed a block which merges script items.
     15
    1162011-12-06  Luke Macpherson   <macpherson@chromium.org>
    217
  • trunk/Source/WebCore/platform/graphics/chromium/UniscribeHelper.cpp

    r101059 r102190  
    541541                                           0, // fNumericOverride    :1;
    542542                                           0, // fLegacyBidiClass    :1;
    543                                            0, // fMergeNeutralItems  :1;
     543                                           1, // fMergeNeutralItems  :1;
    544544                                           0};// fReserved           :7;
    545545    // Calling ScriptApplyDigitSubstitution( 0, &inputControl, &inputState)
     
    575575                                            &m_runs[0], &m_scriptTags[0],
    576576                                            &numberOfItems);
    577             if (SUCCEEDED(hr)) {
    578                 // Pack consecutive runs, the script tag of which are
    579                 // SCRIPT_TAG_UNKNOWN, to reduce the number of runs.
    580                 for (int i = 0; i < numberOfItems; ++i) {
    581                     if (m_scriptTags[i] == SCRIPT_TAG_UNKNOWN) {
    582                         int j = 1;
    583                         while (i + j < numberOfItems && m_scriptTags[i + j] == SCRIPT_TAG_UNKNOWN)
    584                             ++j;
    585                         if (--j) {
    586                             m_runs.remove(i + 1, j);
    587                             m_scriptTags.remove(i + 1, j);
    588                             numberOfItems -= j;
    589                         }
    590                     }
    591                 }
    592                 m_scriptTags.resize(numberOfItems);
    593             }
    594577        } else {
    595578            hr = ScriptItemize(m_input, m_inputLength,
Note: See TracChangeset for help on using the changeset viewer.