Changeset 157018 in webkit


Ignore:
Timestamp:
Oct 6, 2013 8:39:12 PM (11 years ago)
Author:
akling@apple.com
Message:

Range constructors should take a Document&.
<https://webkit.org/b/122435>

Reviewed by Sam Weinig.

Source/WebCore:

Make all Range constructors take Document& instead of a PassRefPtr.
This removes one null check at every call site.

Also use a Ref<Document> for storage in Range.

Source/WTF:

Give Ref an assignment operator.

Location:
trunk/Source
Files:
38 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WTF/ChangeLog

    r156972 r157018  
     12013-10-06  Andreas Kling  <akling@apple.com>
     2
     3        Range constructors should take a Document&.
     4        <https://webkit.org/b/122435>
     5
     6        Reviewed by Sam Weinig.
     7
     8        Give Ref an assignment operator.
     9
    1102013-10-05  Anders Carlsson  <andersca@apple.com>
    211
  • trunk/Source/WTF/wtf/Ref.h

    r155805 r157018  
    3434public:
    3535    Ref(T& object) : m_ptr(&object) { m_ptr->ref(); }
     36    Ref& operator=(T& object)
     37    {
     38        object.ref();
     39        m_ptr->deref();
     40        m_ptr = &object;
     41        return *this;
     42    }
    3643
    3744    ~Ref() { m_ptr->deref(); }
  • trunk/Source/WebCore/ChangeLog

    r157015 r157018  
     12013-10-06  Andreas Kling  <akling@apple.com>
     2
     3        Range constructors should take a Document&.
     4        <https://webkit.org/b/122435>
     5
     6        Reviewed by Sam Weinig.
     7
     8        Make all Range constructors take Document& instead of a PassRefPtr.
     9        This removes one null check at every call site.
     10
     11        Also use a Ref<Document> for storage in Range.
     12
    1132013-10-06  Antti Koivisto  <antti@apple.com>
    214
  • trunk/Source/WebCore/WebCore.exp.in

    r157002 r157018  
    930930__ZN7WebCore5Range14setStartBeforeEPNS_4NodeERi
    931931__ZN7WebCore5Range18selectNodeContentsEPNS_4NodeERi
    932 __ZN7WebCore5Range6createEN3WTF10PassRefPtrINS_8DocumentEEE
    933 __ZN7WebCore5Range6createEN3WTF10PassRefPtrINS_8DocumentEEENS2_INS_4NodeEEEiS6_i
     932__ZN7WebCore5Range6createERNS_8DocumentE
     933__ZN7WebCore5Range6createERNS_8DocumentEN3WTF10PassRefPtrINS_4NodeEEEiS6_i
    934934__ZN7WebCore5Range6setEndEN3WTF10PassRefPtrINS_4NodeEEEiRi
    935935__ZN7WebCore5Range8collapseEbRi
  • trunk/Source/WebCore/accessibility/atk/AXObjectCacheAtk.cpp

    r155507 r157018  
    215215        // the current accessibility object to ensure we emit the
    216216        // right offset (e.g. multiline text areas).
    217         RefPtr<Range> range = Range::create(&document, node->parentNode(), 0, node, 0);
     217        RefPtr<Range> range = Range::create(document, node->parentNode(), 0, node, 0);
    218218        offsetToEmit = offset + TextIterator::rangeLength(range.get());
    219219    }
  • trunk/Source/WebCore/accessibility/atk/WebKitAccessibleHyperlink.cpp

    r156532 r157018  
    261261        return 0;
    262262
    263     RefPtr<Range> range = Range::create(&node->document(), firstPositionInOrBeforeNode(parentNode), firstPositionInOrBeforeNode(node));
     263    RefPtr<Range> range = Range::create(node->document(), firstPositionInOrBeforeNode(parentNode), firstPositionInOrBeforeNode(node));
    264264    return getRangeLengthForObject(coreObject, range.get());
    265265}
     
    287287        return 0;
    288288
    289     RefPtr<Range> range = Range::create(&node->document(), firstPositionInOrBeforeNode(parentNode), lastPositionInOrAfterNode(node));
     289    RefPtr<Range> range = Range::create(node->document(), firstPositionInOrBeforeNode(parentNode), lastPositionInOrAfterNode(node));
    290290    return getRangeLengthForObject(coreObject, range.get());
    291291}
  • trunk/Source/WebCore/accessibility/atk/WebKitAccessibleInterfaceText.cpp

    r156835 r157018  
    533533    // Calculate position of the selected range inside the object.
    534534    Position parentFirstPosition = firstPositionInOrBeforeNode(node);
    535     RefPtr<Range> rangeInParent = Range::create(&node->document(), parentFirstPosition, nodeRangeStart);
     535    RefPtr<Range> rangeInParent = Range::create(node->document(), parentFirstPosition, nodeRangeStart);
    536536
    537537    // Set values for start offsets and calculate initial range length.
    538538    // These values might be adjusted later to cover special cases.
    539539    startOffset = webCoreOffsetToAtkOffset(coreObject, TextIterator::rangeLength(rangeInParent.get(), true));
    540     RefPtr<Range> nodeRange = Range::create(&node->document(), nodeRangeStart, nodeRangeEnd);
     540    RefPtr<Range> nodeRange = Range::create(node->document(), nodeRangeStart, nodeRangeEnd);
    541541    int rangeLength = TextIterator::rangeLength(nodeRange.get(), true);
    542542
  • trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm

    r156550 r157018  
    16521652        return NSMakeRange(NSNotFound, 0);
    16531653   
    1654     RefPtr<Range> testRange = Range::create(&scope->document(), scope, 0, range->startContainer(), range->startOffset());
     1654    RefPtr<Range> testRange = Range::create(scope->document(), scope, 0, range->startContainer(), range->startOffset());
    16551655    ASSERT(testRange->startContainer() == scope);
    16561656    int startPosition = TextIterator::rangeLength(testRange.get());
  • trunk/Source/WebCore/dom/Document.cpp

    r157002 r157018  
    14621462        unsigned offset = shadowAncestorNode->nodeIndex();
    14631463        ContainerNode* container = shadowAncestorNode->parentNode();
    1464         return Range::create(this, container, offset, container, offset);
     1464        return Range::create(*this, container, offset, container, offset);
    14651465    }
    14661466
     
    14731473
    14741474    Position rangeCompliantPosition = visiblePosition.deepEquivalent().parentAnchoredEquivalent();
    1475     return Range::create(this, rangeCompliantPosition, rangeCompliantPosition);
     1475    return Range::create(*this, rangeCompliantPosition, rangeCompliantPosition);
    14761476}
    14771477
     
    16891689PassRefPtr<Range> Document::createRange()
    16901690{
    1691     return Range::create(this);
     1691    return Range::create(*this);
    16921692}
    16931693
  • trunk/Source/WebCore/dom/Node.cpp

    r156986 r157018  
    22782278void Node::textRects(Vector<IntRect>& rects) const
    22792279{
    2280     RefPtr<Range> range = Range::create(&document());
     2280    RefPtr<Range> range = Range::create(document());
    22812281    range->selectNodeContents(const_cast<Node*>(this), IGNORE_EXCEPTION);
    22822282    range->textRects(rects);
  • trunk/Source/WebCore/dom/Range.cpp

    r157002 r157018  
    6363DEFINE_DEBUG_ONLY_GLOBAL(WTF::RefCountedLeakCounter, rangeCounter, ("Range"));
    6464
    65 inline Range::Range(PassRefPtr<Document> ownerDocument)
     65inline Range::Range(Document& ownerDocument)
    6666    : m_ownerDocument(ownerDocument)
    67     , m_start(m_ownerDocument)
    68     , m_end(m_ownerDocument)
     67    , m_start(&ownerDocument)
     68    , m_end(&ownerDocument)
    6969{
    7070#ifndef NDEBUG
     
    7575}
    7676
    77 PassRefPtr<Range> Range::create(PassRefPtr<Document> ownerDocument)
     77PassRefPtr<Range> Range::create(Document& ownerDocument)
    7878{
    7979    return adoptRef(new Range(ownerDocument));
    8080}
    8181
    82 inline Range::Range(PassRefPtr<Document> ownerDocument, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset)
     82inline Range::Range(Document& ownerDocument, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset)
    8383    : m_ownerDocument(ownerDocument)
    84     , m_start(m_ownerDocument)
    85     , m_end(m_ownerDocument)
     84    , m_start(&ownerDocument)
     85    , m_end(&ownerDocument)
    8686{
    8787#ifndef NDEBUG
     
    9797}
    9898
    99 PassRefPtr<Range> Range::create(PassRefPtr<Document> ownerDocument, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset)
     99PassRefPtr<Range> Range::create(Document& ownerDocument, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset)
    100100{
    101101    return adoptRef(new Range(ownerDocument, startContainer, startOffset, endContainer, endOffset));
    102102}
    103103
    104 PassRefPtr<Range> Range::create(PassRefPtr<Document> ownerDocument, const Position& start, const Position& end)
     104PassRefPtr<Range> Range::create(Document& ownerDocument, const Position& start, const Position& end)
    105105{
    106106    return adoptRef(new Range(ownerDocument, start.containerNode(), start.computeOffsetInContainerNode(), end.containerNode(), end.computeOffsetInContainerNode()));
     
    119119void Range::setDocument(Document& document)
    120120{
    121     ASSERT(m_ownerDocument != &document);
    122     if (m_ownerDocument)
    123         m_ownerDocument->detachRange(this);
    124     m_ownerDocument = &document;
     121    ASSERT(&m_ownerDocument.get() != &document);
     122    m_ownerDocument->detachRange(this);
     123    m_ownerDocument = document;
    125124    m_start.setToStartOfNode(&document);
    126125    m_end.setToStartOfNode(&document);
     
    224223
    225224    bool didMoveDocument = false;
    226     if (&refNode->document() != m_ownerDocument) {
     225    if (&refNode->document() != &ownerDocument()) {
    227226        setDocument(refNode->document());
    228227        didMoveDocument = true;
     
    253252
    254253    bool didMoveDocument = false;
    255     if (&refNode->document() != m_ownerDocument) {
     254    if (&refNode->document() != &ownerDocument()) {
    256255        setDocument(refNode->document());
    257256        didMoveDocument = true;
     
    306305    }
    307306
    308     if (!refNode->attached() || &refNode->document() != m_ownerDocument) {
     307    if (!refNode->attached() || &refNode->document() != &ownerDocument()) {
    309308        return false;
    310309    }
     
    335334    }
    336335
    337     if (!refNode->attached() || &refNode->document() != m_ownerDocument) {
     336    if (!refNode->attached() || &refNode->document() != &ownerDocument()) {
    338337        ec = WRONG_DOCUMENT_ERR;
    339338        return 0;
     
    381380    }
    382381
    383     if (&refNode->document() != m_ownerDocument) {
     382    if (&refNode->document() != &ownerDocument()) {
    384383        // Firefox doesn't throw an exception for this case; it returns 0.
    385384        return NODE_BEFORE;
     
    586585    }
    587586
    588     if (!refNode->attached() || &refNode->document() != m_ownerDocument) {
     587    if (!refNode->attached() || &refNode->document() != &ownerDocument()) {
    589588        // Firefox doesn't throw an exception for these cases; it returns false.
    590589        return false;
     
    12261225    }
    12271226
    1228     return Range::create(m_ownerDocument, m_start.container(), m_start.offset(), m_end.container(), m_end.offset());
     1227    return Range::create(ownerDocument(), m_start.container(), m_start.offset(), m_end.container(), m_end.offset());
    12291228}
    12301229
     
    13441343    }
    13451344
    1346     if (m_ownerDocument != &refNode->document())
     1345    if (&ownerDocument() != &refNode->document())
    13471346        setDocument(refNode->document());
    13481347
     
    13891388    }
    13901389
    1391     if (m_ownerDocument != &refNode->document())
     1390    if (&ownerDocument() != &refNode->document())
    13921391        setDocument(refNode->document());
    13931392
     
    17021701{
    17031702    ASSERT(node);
    1704     RefPtr<Range> range = Range::create(&node->document());
     1703    RefPtr<Range> range = Range::create(node->document());
    17051704    int exception = 0;
    17061705    range->selectNodeContents(node, exception);
     
    17371736void Range::nodeChildrenChanged(ContainerNode& container)
    17381737{
    1739     ASSERT(&container.document() == m_ownerDocument);
     1738    ASSERT(&container.document() == &ownerDocument());
    17401739    boundaryNodeChildrenChanged(m_start, container);
    17411740    boundaryNodeChildrenChanged(m_end, container);
     
    17611760void Range::nodeChildrenWillBeRemoved(ContainerNode& container)
    17621761{
    1763     ASSERT(&container.document() == m_ownerDocument);
     1762    ASSERT(&container.document() == &ownerDocument());
    17641763    boundaryNodeChildrenWillBeRemoved(m_start, container);
    17651764    boundaryNodeChildrenWillBeRemoved(m_end, container);
     
    17841783{
    17851784    ASSERT(node);
    1786     ASSERT(&node->document() == m_ownerDocument);
    1787     ASSERT(node != m_ownerDocument);
     1785    ASSERT(&node->document() == &ownerDocument());
     1786    ASSERT(node != &ownerDocument());
    17881787    ASSERT(node->parentNode());
    17891788    boundaryNodeWillBeRemoved(m_start, node);
     
    18041803{
    18051804    ASSERT(text);
    1806     ASSERT(&text->document() == m_ownerDocument);
     1805    ASSERT(&text->document() == &ownerDocument());
    18071806    boundaryTextInserted(m_start, text, offset, length);
    18081807    boundaryTextInserted(m_end, text, offset, length);
     
    18251824{
    18261825    ASSERT(text);
    1827     ASSERT(&text->document() == m_ownerDocument);
     1826    ASSERT(&text->document() == &ownerDocument());
    18281827    boundaryTextRemoved(m_start, text, offset, length);
    18291828    boundaryTextRemoved(m_end, text, offset, length);
     
    18411840{
    18421841    ASSERT(oldNode.node());
    1843     ASSERT(&oldNode.node()->document() == m_ownerDocument);
     1842    ASSERT(&oldNode.node()->document() == &ownerDocument());
    18441843    ASSERT(oldNode.node()->parentNode());
    18451844    ASSERT(oldNode.node()->isTextNode());
     
    18631862{
    18641863    ASSERT(oldNode);
    1865     ASSERT(&oldNode->document() == m_ownerDocument);
     1864    ASSERT(&oldNode->document() == &ownerDocument());
    18661865    ASSERT(oldNode->parentNode());
    18671866    ASSERT(oldNode->isTextNode());
     
    18991898        return ClientRectList::create();
    19001899
    1901     m_ownerDocument->updateLayoutIgnorePendingStylesheets();
     1900    ownerDocument().updateLayoutIgnorePendingStylesheets();
    19021901
    19031902    Vector<FloatQuad> quads;
     
    19341933                Vector<FloatQuad> elementQuads;
    19351934                renderBoxModelObject->absoluteQuads(elementQuads);
    1936                 m_ownerDocument->adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale(elementQuads, renderBoxModelObject);
     1935                ownerDocument().adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale(elementQuads, renderBoxModelObject);
    19371936
    19381937                quads.appendVector(elementQuads);
     
    19461945                Vector<FloatQuad> textQuads;
    19471946                renderText->absoluteQuadsForRange(textQuads, startOffset, endOffset);
    1948                 m_ownerDocument->adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale(textQuads, renderText);
     1947                ownerDocument().adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale(textQuads, renderText);
    19491948
    19501949                quads.appendVector(textQuads);
     
    19591958        return FloatRect();
    19601959
    1961     m_ownerDocument->updateLayoutIgnorePendingStylesheets();
     1960    ownerDocument().updateLayoutIgnorePendingStylesheets();
    19621961
    19631962    Vector<FloatQuad> quads;
  • trunk/Source/WebCore/dom/Range.h

    r156256 r157018  
    4949class Range : public RefCounted<Range> {
    5050public:
    51     static PassRefPtr<Range> create(PassRefPtr<Document>);
    52     static PassRefPtr<Range> create(PassRefPtr<Document>, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset);
    53     static PassRefPtr<Range> create(PassRefPtr<Document>, const Position&, const Position&);
     51    static PassRefPtr<Range> create(Document&);
     52    static PassRefPtr<Range> create(Document&, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset);
     53    static PassRefPtr<Range> create(Document&, const Position&, const Position&);
    5454    ~Range();
    5555
    56     Document& ownerDocument() const { return *m_ownerDocument; }
     56    Document& ownerDocument() const { return const_cast<Document&>(m_ownerDocument.get()); }
     57
    5758    Node* startContainer() const { return m_start.container(); }
    5859    int startOffset() const { return m_start.offset(); }
     
    150151
    151152private:
    152     explicit Range(PassRefPtr<Document>);
    153     Range(PassRefPtr<Document>, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset);
     153    explicit Range(Document&);
     154    Range(Document&, PassRefPtr<Node> startContainer, int startOffset, PassRefPtr<Node> endContainer, int endOffset);
    154155
    155156    void setDocument(Document&);
     
    169170    static PassRefPtr<Node> processAncestorsAndTheirSiblings(ActionType, Node* container, ContentsProcessDirection, PassRefPtr<Node> clonedContainer, Node* commonRoot, ExceptionCode&);
    170171
    171     RefPtr<Document> m_ownerDocument;
     172    Ref<Document> m_ownerDocument;
    172173    RangeBoundaryPoint m_start;
    173174    RangeBoundaryPoint m_end;
  • trunk/Source/WebCore/editing/AlternativeTextController.cpp

    r156372 r157018  
    263263    // to store this value. In order to obtain this offset, we need to first create a range
    264264    // which spans from the start of paragraph to the start position of rangeWithAlternative.
    265     RefPtr<Range> correctionStartOffsetInParagraphAsRange = Range::create(&paragraphRangeContainingCorrection->startContainer(ec)->document(), paragraphRangeContainingCorrection->startPosition(), paragraphRangeContainingCorrection->startPosition());
     265    RefPtr<Range> correctionStartOffsetInParagraphAsRange = Range::create(paragraphRangeContainingCorrection->startContainer(ec)->document(), paragraphRangeContainingCorrection->startPosition(), paragraphRangeContainingCorrection->startPosition());
    266266    if (ec)
    267267        return;
     
    278278    RefPtr<Range> rangeWithAlternative = range->cloneRange(ec);
    279279   
    280     int paragraphStartIndex = TextIterator::rangeLength(Range::create(m_frame.document(), m_frame.document(), 0, paragraphRangeContainingCorrection.get()->startContainer(), paragraphRangeContainingCorrection.get()->startOffset()).get());
     280    int paragraphStartIndex = TextIterator::rangeLength(Range::create(*m_frame.document(), m_frame.document(), 0, paragraphRangeContainingCorrection.get()->startContainer(), paragraphRangeContainingCorrection.get()->startOffset()).get());
    281281    applyCommand(SpellingCorrectionCommand::create(rangeWithAlternative, alternative));
    282282    // Recalculate pragraphRangeContainingCorrection, since SpellingCorrectionCommand modified the DOM, such that the original paragraphRangeContainingCorrection is no longer valid. Radar: 10305315 Bugzilla: 89526
     
    324324    m_frame.document()->updateLayout();
    325325    m_frame.selection().setSelection(selectionOfCorrected, FrameSelection::CloseTyping | FrameSelection::ClearTypingStyle | FrameSelection::SpellCorrectionTriggered);
    326     RefPtr<Range> range = Range::create(m_frame.document(), m_frame.selection().selection().start(), m_frame.selection().selection().end());
     326    RefPtr<Range> range = Range::create(*m_frame.document(), m_frame.selection().selection().start(), m_frame.selection().selection().end());
    327327
    328328    DocumentMarkerController& markers = m_frame.document()->markers();
     
    500500    if (!command->wasCreateLinkCommand())
    501501        return;
    502     RefPtr<Range> range = Range::create(m_frame.document(), command->startingSelection().start(), command->startingSelection().end());
     502    RefPtr<Range> range = Range::create(*m_frame.document(), command->startingSelection().start(), command->startingSelection().end());
    503503    if (!range)
    504504        return;
     
    592592        return;
    593593
    594     RefPtr<Range> precedingCharacterRange = Range::create(m_frame.document(), precedingCharacterPosition, endOfSelection);
     594    RefPtr<Range> precedingCharacterRange = Range::create(*m_frame.document(), precedingCharacterPosition, endOfSelection);
    595595    String string = plainText(precedingCharacterRange.get());
    596596    if (string.isEmpty() || !isWhitespace(string[string.length() - 1]))
     
    617617    Position beginningOfRange = rangeWithAlternative->startPosition();
    618618    Position precedingCharacterPosition = beginningOfRange.previous();
    619     RefPtr<Range> precedingCharacterRange = Range::create(m_frame.document(), precedingCharacterPosition, beginningOfRange);
     619    RefPtr<Range> precedingCharacterRange = Range::create(*m_frame.document(), precedingCharacterPosition, beginningOfRange);
    620620
    621621    Vector<DocumentMarker*> markers = markerController.markersInRange(precedingCharacterRange.get(), DocumentMarker::DeletedAutocorrection);
     
    641641        return false;
    642642    Node* node = endOfWordPosition.containerNode();
    643     RefPtr<Range> wordRange = Range::create(m_frame.document(), node, marker.startOffset(), node, marker.endOffset());
     643    RefPtr<Range> wordRange = Range::create(*m_frame.document(), node, marker.startOffset(), node, marker.endOffset());
    644644    if (!wordRange)
    645645        return false;
  • trunk/Source/WebCore/editing/ApplyStyleCommand.cpp

    r156764 r157018  
    265265    // Calculate start and end indices from the start of the tree that they're in.
    266266    Node* scope = highestAncestor(visibleStart.deepEquivalent().deprecatedNode());
    267     RefPtr<Range> startRange = Range::create(&document(), firstPositionInNode(scope), visibleStart.deepEquivalent().parentAnchoredEquivalent());
    268     RefPtr<Range> endRange = Range::create(&document(), firstPositionInNode(scope), visibleEnd.deepEquivalent().parentAnchoredEquivalent());
     267    RefPtr<Range> startRange = Range::create(document(), firstPositionInNode(scope), visibleStart.deepEquivalent().parentAnchoredEquivalent());
     268    RefPtr<Range> endRange = Range::create(document(), firstPositionInNode(scope), visibleEnd.deepEquivalent().parentAnchoredEquivalent());
    269269    int startIndex = TextIterator::rangeLength(startRange.get(), true);
    270270    int endIndex = TextIterator::rangeLength(endRange.get(), true);
     
    705705    // e.g. When applying font-size: large on <font color="blue">hello</font>, we need to include the font element in our run
    706706    // to generate <font color="blue" size="4">hello</font> instead of <font color="blue"><font size="4">hello</font></font>
    707     RefPtr<Range> range = Range::create(&startNode->document(), start, end);
     707    RefPtr<Range> range = Range::create(startNode->document(), start, end);
    708708    Element* editableRoot = startNode->rootEditableElement();
    709709    if (startNode != editableRoot) {
  • trunk/Source/WebCore/editing/CompositeEditCommand.cpp

    r157002 r157018  
    534534    DocumentMarkerController& markerController = document().markers();
    535535    Vector<DocumentMarker> markers;
    536     copyMarkers(markerController.markersInRange(Range::create(&document(), node, offset, node, offset + count).get(), DocumentMarker::AllMarkers()), markers);
     536    copyMarkers(markerController.markersInRange(Range::create(document(), node, offset, node, offset + count).get(), DocumentMarker::AllMarkers()), markers);
    537537    replaceTextInNode(node, offset, count, replacementText);
    538     RefPtr<Range> newRange = Range::create(&document(), node, offset, node, offset + replacementText.length());
     538    RefPtr<Range> newRange = Range::create(document(), node, offset, node, offset + replacementText.length());
    539539    for (size_t i = 0; i < markers.size(); ++i)
    540540        markerController.addMarker(newRange.get(), markers[i].type(), markers[i].description());
     
    11661166            startIndex = 0;
    11671167            if (startInParagraph) {
    1168                 RefPtr<Range> startRange = Range::create(&document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), visibleStart.deepEquivalent().parentAnchoredEquivalent());
     1168                RefPtr<Range> startRange = Range::create(document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), visibleStart.deepEquivalent().parentAnchoredEquivalent());
    11691169                startIndex = TextIterator::rangeLength(startRange.get(), true);
    11701170            }
     
    11721172            endIndex = 0;
    11731173            if (endInParagraph) {
    1174                 RefPtr<Range> endRange = Range::create(&document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), visibleEnd.deepEquivalent().parentAnchoredEquivalent());
     1174                RefPtr<Range> endRange = Range::create(document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), visibleEnd.deepEquivalent().parentAnchoredEquivalent());
    11751175                endIndex = TextIterator::rangeLength(endRange.get(), true);
    11761176            }
     
    11891189    Position startRangeCompliant = start.parentAnchoredEquivalent();
    11901190    Position endRangeCompliant = end.parentAnchoredEquivalent();
    1191     RefPtr<Range> range = Range::create(&document(), startRangeCompliant.deprecatedNode(), startRangeCompliant.deprecatedEditingOffset(), endRangeCompliant.deprecatedNode(), endRangeCompliant.deprecatedEditingOffset());
     1191    RefPtr<Range> range = Range::create(document(), startRangeCompliant.deprecatedNode(), startRangeCompliant.deprecatedEditingOffset(), endRangeCompliant.deprecatedNode(), endRangeCompliant.deprecatedEditingOffset());
    11921192
    11931193    // FIXME: This is an inefficient way to preserve style on nodes in the paragraph to move. It
     
    12351235    }
    12361236
    1237     RefPtr<Range> startToDestinationRange(Range::create(&document(), firstPositionInNode(document().documentElement()), destination.deepEquivalent().parentAnchoredEquivalent()));
     1237    RefPtr<Range> startToDestinationRange(Range::create(document(), firstPositionInNode(document().documentElement()), destination.deepEquivalent().parentAnchoredEquivalent()));
    12381238    destinationIndex = TextIterator::rangeLength(startToDestinationRange.get(), true);
    12391239
  • trunk/Source/WebCore/editing/DeleteSelectionCommand.cpp

    r156289 r157018  
    658658    }
    659659   
    660     RefPtr<Range> range = Range::create(&document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), endOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent());
    661     RefPtr<Range> rangeToBeReplaced = Range::create(&document(), mergeDestination.deepEquivalent().parentAnchoredEquivalent(), mergeDestination.deepEquivalent().parentAnchoredEquivalent());
     660    RefPtr<Range> range = Range::create(document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), endOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent());
     661    RefPtr<Range> rangeToBeReplaced = Range::create(document(), mergeDestination.deepEquivalent().parentAnchoredEquivalent(), mergeDestination.deepEquivalent().parentAnchoredEquivalent());
    662662    if (!frame().editor().client()->shouldMoveRangeAfterDelete(range.get(), rangeToBeReplaced.get()))
    663663        return;
     
    761761        return String();
    762762
    763     RefPtr<Range> rangeOfFirstCharacter = Range::create(&document(), startOfSelection.deepEquivalent(), nextPosition.deepEquivalent());
     763    RefPtr<Range> rangeOfFirstCharacter = Range::create(document(), startOfSelection.deepEquivalent(), nextPosition.deepEquivalent());
    764764    Vector<DocumentMarker*> markers = document().markers().markersInRange(rangeOfFirstCharacter.get(), DocumentMarker::Autocorrected);
    765765    for (size_t i = 0; i < markers.size(); ++i) {
  • trunk/Source/WebCore/editing/EditingStyle.cpp

    r156760 r157018  
    12781278        end = selection.end().upstream();
    12791279
    1280         Node* pastLast = Range::create(end.document(), position.parentAnchoredEquivalent(), end.parentAnchoredEquivalent())->pastLastNode();
     1280        Node* pastLast = Range::create(*end.document(), position.parentAnchoredEquivalent(), end.parentAnchoredEquivalent())->pastLastNode();
    12811281        for (Node* n = node; n && n != pastLast; n = NodeTraversal::next(n)) {
    12821282            if (!n->isStyledElement())
  • trunk/Source/WebCore/editing/Editor.cpp

    r156941 r157018  
    132132    }
    133133
    134     return Range::create(&range->ownerDocument(), startContainer, startOffset, endContainer, endOffset);
     134    return Range::create(range->ownerDocument(), startContainer, startOffset, endContainer, endOffset);
    135135}
    136136
     
    488488        return;
    489489
    490     RefPtr<Range> rangeToCheck = Range::create(&document(), firstPositionInNode(nodeToCheck), lastPositionInNode(nodeToCheck));
     490    RefPtr<Range> rangeToCheck = Range::create(document(), firstPositionInNode(nodeToCheck), lastPositionInNode(nodeToCheck));
    491491    m_spellChecker->requestCheckingFor(SpellCheckRequest::create(resolveTextCheckingTypeMask(TextCheckingTypeSpelling | TextCheckingTypeGrammar), TextCheckingProcessBatch, rangeToCheck, rangeToCheck));
    492492}
     
    16311631            unsigned start = min(baseOffset + selectionStart, extentOffset);
    16321632            unsigned end = min(max(start, baseOffset + selectionEnd), extentOffset);
    1633             RefPtr<Range> selectedRange = Range::create(&baseNode->document(), baseNode, start, baseNode, end);
     1633            RefPtr<Range> selectedRange = Range::create(baseNode->document(), baseNode, start, baseNode, end);
    16341634            m_frame.selection().setSelectedRange(selectedRange.get(), DOWNSTREAM, false);
    16351635        }
     
    24822482    // we would like to remove the marker from word "avant" and whitespace as well. So we need to get the continous range of
    24832483    // of marker that contains the word in question, and remove marker on that whole range.
    2484     RefPtr<Range> wordRange = Range::create(&document(), startOfFirstWord.deepEquivalent(), endOfLastWord.deepEquivalent());
     2484    RefPtr<Range> wordRange = Range::create(document(), startOfFirstWord.deepEquivalent(), endOfLastWord.deepEquivalent());
    24852485
    24862486    Vector<DocumentMarker*> markers = document().markers().markersInRange(wordRange.get(), DocumentMarker::DictationAlternatives);
     
    25412541    if (start >= end)
    25422542        return 0;
    2543     return Range::create(&m_compositionNode->document(), m_compositionNode.get(), start, m_compositionNode.get(), end);
     2543    return Range::create(m_compositionNode->document(), m_compositionNode.get(), start, m_compositionNode.get(), end);
    25442544}
    25452545
  • trunk/Source/WebCore/editing/EditorCommand.cpp

    r157002 r157018  
    271271    Range* end = a->compareBoundaryPoints(Range::END_TO_END, b, ASSERT_NO_EXCEPTION) <= 0 ? b : a;
    272272
    273     return Range::create(&a->ownerDocument(), start->startContainer(), start->startOffset(), end->endContainer(), end->endOffset());
     273    return Range::create(a->ownerDocument(), start->startContainer(), start->startOffset(), end->endContainer(), end->endOffset());
    274274}
    275275
  • trunk/Source/WebCore/editing/FormatBlockCommand.cpp

    r154938 r157018  
    6666    RefPtr<Node> nodeAfterInsertionPosition = outerBlock;
    6767
    68     RefPtr<Range> range = Range::create(&document(), start, endOfSelection);
     68    RefPtr<Range> range = Range::create(document(), start, endOfSelection);
    6969    Element* refNode = enclosingBlockFlowElement(end);
    7070    Element* root = editableRootForPosition(start);
  • trunk/Source/WebCore/editing/TextCheckingHelper.cpp

    r155228 r157018  
    185185    ASSERT(m_checkingRange);
    186186    if (!m_offsetAsRange)
    187         m_offsetAsRange = Range::create(&paragraphRange()->startContainer()->document(), paragraphRange()->startPosition(), checkingRange()->startPosition());
     187        m_offsetAsRange = Range::create(paragraphRange()->startContainer()->document(), paragraphRange()->startPosition(), checkingRange()->startPosition());
    188188
    189189    return m_offsetAsRange;
     
    316316    setEnd(paragraphRange.get(), endOfParagraph(m_range->startPosition()));
    317317   
    318     RefPtr<Range> offsetAsRange = Range::create(&paragraphRange->startContainer()->document(), paragraphRange->startPosition(), m_range->startPosition());
     318    RefPtr<Range> offsetAsRange = Range::create(paragraphRange->startContainer()->document(), paragraphRange->startPosition(), m_range->startPosition());
    319319    int rangeStartOffset = TextIterator::rangeLength(offsetAsRange.get());
    320320    int totalLengthProcessed = 0;
     
    330330            // Determine the character offset from the end of the original search range to the end of the paragraph,
    331331            // since we will want to ignore results in this area.
    332             RefPtr<Range> endOffsetAsRange = Range::create(&paragraphRange->startContainer()->document(), paragraphRange->startPosition(), m_range->endPosition());
     332            RefPtr<Range> endOffsetAsRange = Range::create(paragraphRange->startContainer()->document(), paragraphRange->startPosition(), m_range->endPosition());
    333333            currentEndOffset = TextIterator::rangeLength(endOffsetAsRange.get());
    334334            lastIteration = true;
     
    383383                    int spellingOffset = spellingLocation - currentStartOffset;
    384384                    if (!firstIteration) {
    385                         RefPtr<Range> paragraphOffsetAsRange = Range::create(&paragraphRange->startContainer()->document(), m_range->startPosition(), paragraphRange->startPosition());
     385                        RefPtr<Range> paragraphOffsetAsRange = Range::create(paragraphRange->startContainer()->document(), m_range->startPosition(), paragraphRange->startPosition());
    386386                        spellingOffset += TextIterator::rangeLength(paragraphOffsetAsRange.get());
    387387                    }
     
    394394                    int grammarPhraseOffset = grammarPhraseLocation - currentStartOffset;
    395395                    if (!firstIteration) {
    396                         RefPtr<Range> paragraphOffsetAsRange = Range::create(&paragraphRange->startContainer()->document(), m_range->startPosition(), paragraphRange->startPosition());
     396                        RefPtr<Range> paragraphOffsetAsRange = Range::create(paragraphRange->startContainer()->document(), m_range->startPosition(), paragraphRange->startPosition());
    397397                        grammarPhraseOffset += TextIterator::rangeLength(paragraphOffsetAsRange.get());
    398398                    }
  • trunk/Source/WebCore/editing/TextIterator.cpp

    r156657 r157018  
    10661066            m_positionOffsetBaseNode = 0;
    10671067        }
    1068         return Range::create(&m_positionNode->document(), m_positionNode, m_positionStartOffset, m_positionNode, m_positionEndOffset);
     1068        return Range::create(m_positionNode->document(), m_positionNode, m_positionStartOffset, m_positionNode, m_positionEndOffset);
    10691069    }
    10701070
    10711071    // otherwise, return the end of the overall range we were given
    10721072    if (m_endContainer)
    1073         return Range::create(&m_endContainer->document(), m_endContainer, m_endOffset, m_endContainer, m_endOffset);
     1073        return Range::create(m_endContainer->document(), m_endContainer, m_endOffset, m_endContainer, m_endOffset);
    10741074       
    10751075    return 0;
     
    13681368{
    13691369    if (m_positionNode)
    1370         return Range::create(&m_positionNode->document(), m_positionNode, m_positionStartOffset, m_positionNode, m_positionEndOffset);
    1371    
    1372     return Range::create(&m_startNode->document(), m_startNode, m_startOffset, m_startNode, m_startOffset);
     1370        return Range::create(m_positionNode->document(), m_positionNode, m_positionStartOffset, m_positionNode, m_positionEndOffset);
     1371   
     1372    return Range::create(m_startNode->document(), m_startNode, m_startOffset, m_startNode, m_startOffset);
    13731373}
    13741374
     
    14691469    RefPtr<Range> end = it.range();
    14701470
    1471     return Range::create(&start->startContainer()->document(),
     1471    return Range::create(start->startContainer()->document(),
    14721472        start->startContainer(), start->startOffset(),
    14731473        end->endContainer(), end->endOffset());
     
    25052505        return false;
    25062506
    2507     RefPtr<Range> testRange = Range::create(&scope->document(), scope, 0, range->startContainer(), range->startOffset());
     2507    RefPtr<Range> testRange = Range::create(scope->document(), scope, 0, range->startContainer(), range->startOffset());
    25082508    ASSERT(testRange->startContainer() == scope);
    25092509    location = TextIterator::rangeLength(testRange.get());
  • trunk/Source/WebCore/editing/VisiblePosition.cpp

    r155318 r157018  
    679679        return 0;
    680680
    681     return Range::create(&s.containerNode()->document(), s.containerNode(), s.offsetInContainerNode(), e.containerNode(), e.offsetInContainerNode());
     681    return Range::create(s.containerNode()->document(), s.containerNode(), s.offsetInContainerNode(), e.containerNode(), e.offsetInContainerNode());
    682682}
    683683
  • trunk/Source/WebCore/editing/VisibleSelection.cpp

    r156981 r157018  
    131131    Position start = m_start.parentAnchoredEquivalent();
    132132    Position end = m_end.parentAnchoredEquivalent();
    133     return Range::create(&start.anchorNode()->document(), start, end);
     133    return Range::create(start.anchorNode()->document(), start, end);
    134134}
    135135
     
    187187    // VisibleSelections are supposed to always be valid.  This constructor will ASSERT
    188188    // if a valid range could not be created, which is fine for this callsite.
    189     return Range::create(&s.anchorNode()->document(), s, e);
     189    return Range::create(s.anchorNode()->document(), s, e);
    190190}
    191191
     
    211211        return 0;
    212212
    213     RefPtr<Range> searchRange(Range::create(&n->document()));
     213    RefPtr<Range> searchRange(Range::create(n->document()));
    214214    ExceptionCode ec = 0;
    215215
  • trunk/Source/WebCore/editing/VisibleUnits.cpp

    r156094 r157018  
    458458    Position start = createLegacyEditingPosition(boundary, 0).parentAnchoredEquivalent();
    459459    Position end = pos.parentAnchoredEquivalent();
    460     RefPtr<Range> searchRange = Range::create(&boundaryDocument);
     460    RefPtr<Range> searchRange = Range::create(boundaryDocument);
    461461   
    462462    Vector<UChar, 1024> string;
  • trunk/Source/WebCore/editing/htmlediting.cpp

    r156987 r157018  
    538538}
    539539
    540 // Create a range object with two visible positions, start and end.
    541 // create(PassRefPtr<Document>, const Position&, const Position&); will use deprecatedEditingOffset
    542 // Use this function instead of create a regular range object (avoiding editing offset).
    543 PassRefPtr<Range> createRange(PassRefPtr<Document> document, const VisiblePosition& start, const VisiblePosition& end, ExceptionCode& ec)
    544 {
    545     ec = 0;
    546     RefPtr<Range> selectedRange = Range::create(document);
    547     selectedRange->setStart(start.deepEquivalent().containerNode(), start.deepEquivalent().computeOffsetInContainerNode(), ec);
    548     if (!ec)
    549         selectedRange->setEnd(end.deepEquivalent().containerNode(), end.deepEquivalent().computeOffsetInContainerNode(), ec);
    550     return selectedRange.release();
    551 }
    552 
    553 // Extend rangeToExtend to include nodes that wraps range and visibly starts and ends inside or at the boudnaries of maximumRange
    554 // e.g. if the original range spaned "hello" in <div>hello</div>, then this function extends the range to contain div's around it.
    555 // Call this function before copying / moving paragraphs to contain all wrapping nodes.
    556 // This function stops extending the range immediately below rootNode; i.e. the extended range can contain a child node of rootNode
    557 // but it can never contain rootNode itself.
    558 PassRefPtr<Range> extendRangeToWrappingNodes(PassRefPtr<Range> range, const Range* maximumRange, const Node* rootNode)
    559 {
    560     ASSERT(range);
    561     ASSERT(maximumRange);
    562 
    563     Node* ancestor = range->commonAncestorContainer(IGNORE_EXCEPTION); // Find the closest common ancestor.
    564     Node* highestNode = 0;
    565     // traverse through ancestors as long as they are contained within the range, content-editable, and below rootNode (could be =0).
    566     while (ancestor && ancestor->rendererIsEditable() && isNodeVisiblyContainedWithin(ancestor, maximumRange) && ancestor != rootNode) {
    567         highestNode = ancestor;
    568         ancestor = ancestor->parentNode();
    569     }
    570 
    571     if (!highestNode)
    572         return range;
    573 
    574     // Create new range with the highest editable node contained within the range
    575     RefPtr<Range> extendedRange = Range::create(&range->ownerDocument());
    576     extendedRange->selectNode(highestNode, IGNORE_EXCEPTION);
    577     return extendedRange.release();
    578 }
    579 
    580540bool isListElement(Node *n)
    581541{
     
    11561116        scope = document.documentElement();
    11571117
    1158     RefPtr<Range> range = Range::create(&document, firstPositionInNode(scope.get()), p.parentAnchoredEquivalent());
    1159 
     1118    RefPtr<Range> range = Range::create(document, firstPositionInNode(scope.get()), p.parentAnchoredEquivalent());
    11601119    return TextIterator::rangeLength(range.get(), true);
    11611120}
     
    11651124{
    11661125    ASSERT(node);
    1167     RefPtr<Range> range = Range::create(&node->document(), firstPositionInNode(node), visiblePosition.deepEquivalent().parentAnchoredEquivalent());
     1126    RefPtr<Range> range = Range::create(node->document(), firstPositionInNode(node), visiblePosition.deepEquivalent().parentAnchoredEquivalent());
    11681127    return TextIterator::rangeLength(range.get(), forSelectionPreservation);
    11691128}
     
    11851144        return VisiblePosition(firstPositionInOrBeforeNode(node), DOWNSTREAM);
    11861145
    1187     RefPtr<Range> range = Range::create(&node->document());
     1146    RefPtr<Range> range = Range::create(node->document());
    11881147    range->selectNodeContents(node, IGNORE_EXCEPTION);
    11891148    CharacterIterator it(range.get());
  • trunk/Source/WebCore/editing/htmlediting.h

    r156289 r157018  
    195195
    196196// -------------------------------------------------------------------------
    197 // Range
    198 // -------------------------------------------------------------------------
    199 
    200 // Functions returning Range
    201 
    202 PassRefPtr<Range> createRange(PassRefPtr<Document>, const VisiblePosition& start, const VisiblePosition& end, ExceptionCode&);
    203 PassRefPtr<Range> extendRangeToWrappingNodes(PassRefPtr<Range> rangeToExtend, const Range* maximumRange, const Node* rootNode);
    204 
    205 // -------------------------------------------------------------------------
    206197// HTMLElement
    207198// -------------------------------------------------------------------------
  • trunk/Source/WebCore/editing/markup.cpp

    r157004 r157018  
    272272    Position start = createLegacyEditingPosition(const_cast<Node*>(&node), startOffset);
    273273    Position end = createLegacyEditingPosition(const_cast<Node*>(&node), endOffset);
    274     return plainText(Range::create(&node.document(), start, end).get());
     274    return plainText(Range::create(node.document(), start, end).get());
    275275}
    276276
  • trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp

    r156903 r157018  
    434434
    435435    if (!innerText->firstChild())
    436         return Range::create(&document(), innerText, 0, innerText, 0);
     436        return Range::create(document(), innerText, 0, innerText, 0);
    437437
    438438    int offset = 0;
     
    458458        return 0;
    459459
    460     return Range::create(&document(), startNode, start, endNode, end);
     460    return Range::create(document(), startNode, start, endNode, end);
    461461}
    462462
  • trunk/Source/WebCore/page/DOMSelection.cpp

    r154877 r157018  
    369369        ContainerNode* container = shadowAncestor->parentNodeGuaranteedHostFree();
    370370        int offset = shadowAncestor->nodeIndex();
    371         return Range::create(&shadowAncestor->document(), container, offset, container, offset);
     371        return Range::create(shadowAncestor->document(), container, offset, container, offset);
    372372    }
    373373
  • trunk/Source/WebCore/page/EventHandler.cpp

    r156948 r157018  
    572572static int textDistance(const Position& start, const Position& end)
    573573{
    574     RefPtr<Range> range = Range::create(&start.anchorNode()->document(), start, end);
     574    RefPtr<Range> range = Range::create(start.anchorNode()->document(), start, end);
    575575    return TextIterator::rangeLength(range.get(), true);
    576576}
  • trunk/Source/WebCore/rendering/RenderNamedFlowThread.cpp

    r156450 r157018  
    616616            continue;
    617617
    618         RefPtr<Range> range = Range::create(&contentElement->document());
     618        RefPtr<Range> range = Range::create(contentElement->document());
    619619        bool foundStartPosition = false;
    620620        bool startsAboveRegion = true;
     
    657657                            range->setEndBefore(node, IGNORE_EXCEPTION);
    658658                        rangeObjects.append(range->cloneRange(IGNORE_EXCEPTION));
    659                         range = Range::create(&contentElement->document());
     659                        range = Range::create(contentElement->document());
    660660                        startsAboveRegion = true;
    661661                    } else
  • trunk/Source/WebCore/testing/Internals.cpp

    r156981 r157018  
    745745    if (!marker)
    746746        return 0;
    747     return Range::create(&node->document(), node, marker->startOffset(), node, marker->endOffset());
     747    return Range::create(node->document(), node, marker->startOffset(), node, marker->endOffset());
    748748}
    749749
  • trunk/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp

    r156769 r157018  
    648648    WebCore::Element* scope = selectionRoot ? selectionRoot : frame.document()->documentElement();
    649649
    650     RefPtr<WebCore::Range> testRange = WebCore::Range::create(&scope->document(), scope, 0, range->startContainer(), range->startOffset());
     650    RefPtr<WebCore::Range> testRange = WebCore::Range::create(scope->document(), scope, 0, range->startContainer(), range->startOffset());
    651651    *start = WebCore::TextIterator::rangeLength(testRange.get());
    652652
  • trunk/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp

    r156948 r157018  
    397397    Element* scope = selectionRoot ? selectionRoot : frame.document()->documentElement();
    398398
    399     RefPtr<Range> testRange = Range::create(&scope->document(), scope, 0, range->startContainer(), range->startOffset());
     399    RefPtr<Range> testRange = Range::create(scope->document(), scope, 0, range->startContainer(), range->startOffset());
    400400    ASSERT(testRange->startContainer() == scope);
    401401    *start = TextIterator::rangeLength(testRange.get());
  • trunk/Source/WebKit/mac/WebView/WebHTMLRepresentation.mm

    r156527 r157018  
    275275- (NSAttributedString *)attributedStringFrom:(DOMNode *)startNode startOffset:(int)startOffset to:(DOMNode *)endNode endOffset:(int)endOffset
    276276{
    277     return [WebHTMLConverter editingAttributedStringFromRange:Range::create(&core(startNode)->document(), core(startNode), startOffset, core(endNode), endOffset).get()];
     277    return [WebHTMLConverter editingAttributedStringFromRange:Range::create(core(startNode)->document(), core(startNode), startOffset, core(endNode), endOffset).get()];
    278278}
    279279
  • trunk/Source/WebKit/mac/WebView/WebHTMLView.mm

    r156860 r157018  
    60326032    if (!attributedString) {
    60336033        Document* coreDocument = core(document);
    6034         attributedString = [WebHTMLConverter editingAttributedStringFromRange:Range::create(coreDocument, coreDocument, 0, coreDocument, coreDocument->childNodeCount()).get()];
     6034        attributedString = [WebHTMLConverter editingAttributedStringFromRange:Range::create(*coreDocument, coreDocument, 0, coreDocument, coreDocument->childNodeCount()).get()];
    60356035    }
    60366036    return attributedString;
  • trunk/Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKDOMRange.mm

    r155228 r157018  
    5252- (id)initWithDocument:(WKDOMDocument *)document
    5353{
    54     RefPtr<WebCore::Range> range = WebCore::Range::create(WebKit::toWebCoreDocument(document));
     54    RefPtr<WebCore::Range> range = WebCore::Range::create(*WebKit::toWebCoreDocument(document));
    5555    self = [self _initWithImpl:range.get()];
    5656    if (!self)
Note: See TracChangeset for help on using the changeset viewer.