[Webkit-unassigned] [Bug 196427] New: REGRESSION (r135972): WebCore::TextIterator::plainText() discards value from Document::displayStringModifiedByEncoding() when isDisplayString == true

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Mar 30 09:42:25 PDT 2019


https://bugs.webkit.org/show_bug.cgi?id=196427

            Bug ID: 196427
           Summary: REGRESSION (r135972):
                    WebCore::TextIterator::plainText() discards value from
                    Document::displayStringModifiedByEncoding() when
                    isDisplayString == true
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Keywords: InRadar
          Severity: Normal
          Priority: P2
         Component: DOM
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: ddkilzer at webkit.org
                CC: cdumez at apple.com, rniwa at webkit.org

WebCore::TextIterator::plainText() discards value from WebCore::Document::displayStringModifiedByEncoding() when argument isDisplayString == true.

<https://trac.webkit.org/browser/webkit/trunk/Source/WebCore/editing/TextIterator.cpp#L2655>

String plainText(Position start, Position end, TextIteratorBehavior defaultBehavior, bool isDisplayString)
{
    […]
    String result = builder.toString();

    if (isDisplayString)
        document->displayStringModifiedByEncoding(result);

    return result;
}

Looks like this regressed with this commit:

Bug 103295: TextIterator unnecessarily converts 8 bit strings to 16 bits
<https://bugs.webkit.org/show_bug.cgi?id=103295>
<https://trac.webkit.org/changeset/135972>

The method call changed, but the new method returned an updated string instead of modifying it in place:

     if (isDisplayString && r->ownerDocument())
-        r->ownerDocument()->displayBufferModifiedByEncoding(result, bufferLength);
+        r->ownerDocument()->displayStringModifiedByEncoding(result);

And Document::displayBufferModifiedByEncoding() was removed by:

Bug 166569: Remove PassRefPtr use from the "dom" directory, related cleanup
<https://bugs.webkit.org/show_bug.cgi?id=166569>
<https://trac.webkit.org/changeset/210216>

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20190330/2f3b45f1/attachment-0001.html>


More information about the webkit-unassigned mailing list