Changeset 58447 in webkit


Ignore:
Timestamp:
Apr 28, 2010 5:38:40 PM (14 years ago)
Author:
evan@chromium.org
Message:

2010-04-28 Evan Martin <evan@chromium.org>

Reviewed by David Levin.

[chromium] revert getFontDataForCharacters change in r58341
https://bugs.webkit.org/show_bug.cgi?id=38288

  • platform/chromium/test_expectations.txt: add the test to the now-failing list.

2010-04-28 Evan Martin <evan@chromium.org>

Reviewed by David Levin.

[chromium] revert getFontDataForCharacters change in r58341
https://bugs.webkit.org/show_bug.cgi?id=38288

It caused a performance regression.

  • platform/chromium/ChromiumBridge.h:
  • platform/graphics/chromium/FontCacheLinux.cpp: (WebCore::FontCache::getFontDataForCharacters):
Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r58446 r58447  
     12010-04-28  Evan Martin  <evan@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        [chromium] revert getFontDataForCharacters change in r58341
     6        https://bugs.webkit.org/show_bug.cgi?id=38288
     7
     8        * platform/chromium/test_expectations.txt: add the test to the now-failing list.
     9
    1102010-04-28  Eric Seidel  <eric@webkit.org>
    211
  • trunk/LayoutTests/platform/chromium/test_expectations.txt

    r58414 r58447  
    28692869// WebKit roll 58304:58400
    28702870BUGUKAI WIN MAC : fast/text/international/bold-bengali.html = MISSING
     2871
     2872// We're reverting the patch that fixed this test on Linux due to
     2873// the perf regression described in the bug.
     2874BUG42760 LINUX : fast/text/international/bold-bengali.html = FAIL
  • trunk/WebCore/ChangeLog

    r58446 r58447  
     12010-04-28  Evan Martin  <evan@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        [chromium] revert getFontDataForCharacters change in r58341
     6        https://bugs.webkit.org/show_bug.cgi?id=38288
     7
     8        It caused a performance regression.
     9
     10        * platform/chromium/ChromiumBridge.h:
     11        * platform/graphics/chromium/FontCacheLinux.cpp:
     12        (WebCore::FontCache::getFontDataForCharacters):
     13
    1142010-04-28  Eric Seidel  <eric@webkit.org>
    215
  • trunk/WebCore/platform/chromium/ChromiumBridge.h

    r58341 r58447  
    117117#if OS(LINUX)
    118118        static void getRenderStyleForStrike(const char* family, int sizeAndStyle, FontRenderStyle* result);
    119         // This code is currently in the process of getting rejiggered, and though
    120         // it is not currently used, it will hopefully be used again soon.
    121119        static String getFontFamilyForCharacters(const UChar*, size_t numCharacters);
    122120#endif
  • trunk/WebCore/platform/graphics/chromium/FontCacheLinux.cpp

    r58341 r58447  
    5959                                                          int length)
    6060{
    61     int style = SkTypeface::kNormal;
    62     if (font.fontDescription().weight() >= FontWeightBold)
    63         style |= SkTypeface::kBold;
    64     if (font.fontDescription().italic())
    65         style |= SkTypeface::kItalic;
    66 
    67     SkTypeface* tf = SkTypeface::CreateForChars(characters, length * 2,
    68                                                 static_cast<SkTypeface::Style>(style));
    69     if (!tf)
     61    String family = ChromiumBridge::getFontFamilyForCharacters(characters, length);
     62    if (family.isEmpty())
    7063        return 0;
    7164
    72     // FIXME: we don't have a family name for this font.
    73     // However, the family name within FontPlatformData is only used when picking
    74     // a render style for the font, so it's not too great of a loss.
    75     FontPlatformData result(tf,
    76                             "",
    77                             font.fontDescription().computedSize(),
    78                             (style & SkTypeface::kBold) && !tf->isBold(),
    79                             (style & SkTypeface::kItalic) && !tf->isItalic());
    80     tf->unref();
    81     return getCachedFontData(&result);
     65    AtomicString atomicFamily(family);
     66    return getCachedFontData(getCachedFontPlatformData(font.fontDescription(), atomicFamily, false));
    8267}
    8368
Note: See TracChangeset for help on using the changeset viewer.