2009-02-11  David Hyatt  <hyatt@apple.com>

        Combine RenderObject::element() and RenderObject::node() into a single function.  
        node() now has the "anonymous bit" checking behavior of element() and will
        return 0 for anonymous content.  This patch switches all callers of element() 
        to node() and patches old callers of node() to deal with situations where they
        did not expect node() to be 0.  A bunch of node() calls were calling stuff on 
        Document that they clearly didn't intend, so overall this is a nice improvement.
    
        Reviewed by Sam Weinig

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::getUpperLeftCorner):
        * dom/Element.cpp:
        (WebCore::Element::offsetParent):
        * dom/Position.cpp:
        (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
        * editing/ModifySelectionListLevel.cpp:
        (WebCore::getStartEndListChildren):
        (WebCore::IncreaseSelectionListLevelCommand::doApply):
        (WebCore::DecreaseSelectionListLevelCommand::doApply):
        * editing/TextIterator.cpp:
        (WebCore::TextIterator::advance):
        * editing/VisiblePosition.cpp:
        (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
        (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
        * editing/visible_units.cpp:
        (WebCore::startPositionForLine):
        (WebCore::endPositionForLine):
        * page/AXObjectCache.cpp:
        (WebCore::AXObjectCache::get):
        * page/AccessibilityList.cpp:
        (WebCore::AccessibilityList::isUnorderedList):
        (WebCore::AccessibilityList::isOrderedList):
        (WebCore::AccessibilityList::isDefinitionList):
        * page/AccessibilityListBox.cpp:
        (WebCore::AccessibilityListBox::doAccessibilityHitTest):
        * page/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::isPasswordField):
        (WebCore::AccessibilityRenderObject::isFileUploadButton):
        (WebCore::AccessibilityRenderObject::isInputImage):
        (WebCore::AccessibilityRenderObject::isMultiSelect):
        (WebCore::AccessibilityRenderObject::isControl):
        (WebCore::AccessibilityRenderObject::getAttribute):
        (WebCore::AccessibilityRenderObject::anchorElement):
        (WebCore::AccessibilityRenderObject::actionElement):
        (WebCore::AccessibilityRenderObject::mouseButtonListener):
        (WebCore::AccessibilityRenderObject::helpText):
        (WebCore::AccessibilityRenderObject::textUnderElement):
        (WebCore::AccessibilityRenderObject::hasIntValue):
        (WebCore::AccessibilityRenderObject::intValue):
        (WebCore::AccessibilityRenderObject::labelElementContainer):
        (WebCore::AccessibilityRenderObject::title):
        (WebCore::AccessibilityRenderObject::accessibilityDescription):
        (WebCore::AccessibilityRenderObject::boundingBoxRect):
        (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
        (WebCore::AccessibilityRenderObject::titleUIElement):
        (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
        (WebCore::AccessibilityRenderObject::text):
        (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
        (WebCore::AccessibilityRenderObject::accessKey):
        (WebCore::AccessibilityRenderObject::setSelectedTextRange):
        (WebCore::AccessibilityRenderObject::url):
        (WebCore::AccessibilityRenderObject::isFocused):
        (WebCore::AccessibilityRenderObject::setFocused):
        (WebCore::AccessibilityRenderObject::setValue):
        (WebCore::AccessibilityRenderObject::isEnabled):
        (WebCore::AccessibilityRenderObject::visiblePositionRange):
        (WebCore::AccessibilityRenderObject::index):
        (WebCore::AccessibilityRenderObject::activeDescendant):
        (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
        (WebCore::AccessibilityRenderObject::observableObject):
        (WebCore::AccessibilityRenderObject::roleValue):
        (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
        (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
        * page/AccessibilityTable.cpp:
        (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
        (WebCore::AccessibilityTable::title):
        * page/AccessibilityTableCell.cpp:
        (WebCore::AccessibilityTableCell::titleUIElement):
        * page/AccessibilityTableColumn.cpp:
        (WebCore::AccessibilityTableColumn::headerObjectForSection):
        * page/AccessibilityTableRow.cpp:
        (WebCore::AccessibilityTableRow::headerObject):
        * page/EventHandler.cpp:
        (WebCore::EventHandler::dispatchMouseEvent):
        (WebCore::EventHandler::canMouseDownStartSelect):
        (WebCore::EventHandler::canMouseDragExtendSelect):
        (WebCore::EventHandler::shouldDragAutoNode):
        * page/Frame.cpp:
        (WebCore::Frame::searchForLabelsAboveCell):
        (WebCore::Frame::setFocusedNodeIfNeeded):
        * page/FrameView.cpp:
        (WebCore::FrameView::updateOverflowStatus):
        * page/animation/AnimationBase.cpp:
        (WebCore::AnimationBase::updateStateMachine):
        * page/animation/AnimationController.cpp:
        (WebCore::AnimationControllerPrivate::updateAnimationTimer):
        (WebCore::AnimationController::cancelAnimations):
        (WebCore::AnimationController::updateAnimations):
        * page/animation/KeyframeAnimation.cpp:
        (WebCore::KeyframeAnimation::KeyframeAnimation):
        (WebCore::KeyframeAnimation::endAnimation):
        * page/mac/AccessibilityObjectWrapper.mm:
        (blockquoteLevel):
        (AXAttributeStringSetHeadingLevel):
        * page/mac/FrameMac.mm:
        (WebCore::Frame::searchForNSLabelsAboveCell):
        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::verticallyAlignBoxes):
        (WebCore::InlineFlowBox::paint):
        (WebCore::shouldDrawTextDecoration):
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paintDocumentMarkers):
        * rendering/RenderBR.cpp:
        (WebCore::RenderBR::positionForCoordinates):
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlock):
        (WebCore::RenderBlock::handleRunInChild):
        (WebCore::RenderBlock::paintObject):
        (WebCore::RenderBlock::isSelectionRoot):
        (WebCore::RenderBlock::rightmostPosition):
        (WebCore::RenderBlock::positionForBox):
        (WebCore::RenderBlock::positionForRenderer):
        (WebCore::RenderBlock::positionForCoordinates):
        (WebCore::RenderBlock::hasLineIfEmpty):
        (WebCore::RenderBlock::updateFirstLetter):
        (WebCore::RenderBlock::updateHitTestResult):
        (WebCore::RenderBlock::addFocusRingRects):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::styleWillChange):
        (WebCore::RenderBox::updateBoxModelInfoFromStyle):
        (WebCore::RenderBox::paintRootBoxDecorations):
        (WebCore::RenderBox::positionForCoordinates):
        * rendering/RenderButton.cpp:
        (WebCore::RenderButton::updateFromElement):
        (WebCore::RenderButton::canHaveChildren):
        * rendering/RenderCounter.cpp:
        (WebCore::planCounter):
        * rendering/RenderFieldset.cpp:
        (WebCore::RenderFieldset::findLegend):
        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::layoutVerticalBox):
        * rendering/RenderForeignObject.cpp:
        (WebCore::RenderForeignObject::translationForAttributes):
        (WebCore::RenderForeignObject::calculateLocalTransform):
        * rendering/RenderFrame.h:
        (WebCore::RenderFrame::element):
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::paintReplaced):
        (WebCore::RenderImage::imageMap):
        (WebCore::RenderImage::nodeAtPoint):
        (WebCore::RenderImage::updateAltText):
        * rendering/RenderInline.cpp:
        (WebCore::RenderInline::cloneInline):
        (WebCore::RenderInline::updateHitTestResult):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::isTransparent):
        (WebCore::RenderLayer::scrollToOffset):
        (WebCore::RenderLayer::resize):
        (WebCore::RenderLayer::createScrollbar):
        (WebCore::RenderLayer::updateOverflowStatus):
        (WebCore::RenderLayer::updateScrollInfoAfterLayout):
        (WebCore::RenderLayer::enclosingElement):
        (WebCore::RenderLayer::updateHoverActiveState):
        (WebCore::RenderLayer::updateScrollCornerStyle):
        (WebCore::RenderLayer::updateResizerStyle):
        * rendering/RenderLayer.h:
        (WebCore::RenderLayer::isRootLayer):
        * rendering/RenderListItem.cpp:
        (WebCore::getParentOfFirstLineBox):
        * rendering/RenderMarquee.cpp:
        (WebCore::RenderMarquee::marqueeSpeed):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::RenderObject):
        (WebCore::RenderObject::isBody):
        (WebCore::RenderObject::isHR):
        (WebCore::RenderObject::isHTMLMarquee):
        (WebCore::RenderObject::isEditable):
        (WebCore::RenderObject::addPDFURLRect):
        (WebCore::RenderObject::showTreeForThis):
        (WebCore::RenderObject::draggableNode):
        (WebCore::RenderObject::hasOutlineAnnotation):
        (WebCore::RenderObject::positionForCoordinates):
        (WebCore::RenderObject::updateDragState):
        (WebCore::RenderObject::updateHitTestResult):
        (WebCore::RenderObject::getUncachedPseudoStyle):
        (WebCore::RenderObject::getTextDecorationColors):
        (WebCore::RenderObject::caretMaxOffset):
        (WebCore::RenderObject::offsetParent):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::isRoot):
        (WebCore::RenderObject::isInlineContinuation):
        (WebCore::RenderObject::node):
        (WebCore::RenderObject::setNode):
        * rendering/RenderObjectChildList.cpp:
        (WebCore::RenderObjectChildList::destroyLeftoverChildren):
        * rendering/RenderPart.cpp:
        (WebCore::RenderPart::updateWidgetPosition):
        * rendering/RenderPartObject.cpp:
        (WebCore::RenderPartObject::updateWidget):
        (WebCore::RenderPartObject::viewCleared):
        * rendering/RenderPath.cpp:
        (WebCore::RenderPath::calculateLocalTransform):
        (WebCore::RenderPath::layout):
        (WebCore::RenderPath::paint):
        (WebCore::RenderPath::drawMarkersIfNeeded):
        * rendering/RenderReplaced.cpp:
        (WebCore::RenderReplaced::positionForCoordinates):
        (WebCore::RenderReplaced::isSelected):
        * rendering/RenderSVGGradientStop.cpp:
        (WebCore::RenderSVGGradientStop::gradientElement):
        * rendering/RenderSVGImage.cpp:
        (WebCore::RenderSVGImage::calculateLocalTransform):
        * rendering/RenderSVGInlineText.cpp:
        (WebCore::RenderSVGInlineText::positionForCoordinates):
        * rendering/RenderSVGRoot.cpp:
        (WebCore::RenderSVGRoot::layout):
        (WebCore::RenderSVGRoot::applyContentTransforms):
        (WebCore::RenderSVGRoot::paint):
        (WebCore::RenderSVGRoot::calcViewport):
        (WebCore::RenderSVGRoot::absoluteTransform):
        * rendering/RenderSVGText.cpp:
        (WebCore::RenderSVGText::calculateLocalTransform):
        (WebCore::RenderSVGText::layout):
        * rendering/RenderSVGTextPath.cpp:
        (WebCore::RenderSVGTextPath::layoutPath):
        (WebCore::RenderSVGTextPath::startOffset):
        (WebCore::RenderSVGTextPath::exactAlignment):
        (WebCore::RenderSVGTextPath::stretchMethod):
        * rendering/RenderSVGTransformableContainer.cpp:
        (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
        * rendering/RenderSVGViewportContainer.cpp:
        (WebCore::RenderSVGViewportContainer::calcViewport):
        (WebCore::RenderSVGViewportContainer::viewportTransform):
        (WebCore::RenderSVGViewportContainer::nodeAtPoint):
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::addChild):
        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::updateFromElement):
        (WebCore::RenderTableCell::calcPrefWidths):
        * rendering/RenderTableCol.cpp:
        (WebCore::RenderTableCol::updateFromElement):
        * rendering/RenderTableRow.cpp:
        (WebCore::RenderTableRow::addChild):
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::addChild):
        * rendering/RenderText.cpp:
        (WebCore::RenderText::originalText):
        (WebCore::RenderText::positionForCoordinates):
        * rendering/RenderTextControlMultiLine.cpp:
        (WebCore::RenderTextControlMultiLine::nodeAtPoint):
        * rendering/RenderTextControlSingleLine.cpp:
        (WebCore::RenderTextControlSingleLine::nodeAtPoint):
        * rendering/RenderTextFragment.cpp:
        (WebCore::RenderTextFragment::originalText):
        (WebCore::RenderTextFragment::previousCharacter):
        * rendering/RenderTheme.cpp:
        (WebCore::RenderTheme::isActive):
        (WebCore::RenderTheme::isChecked):
        (WebCore::RenderTheme::isIndeterminate):
        (WebCore::RenderTheme::isEnabled):
        (WebCore::RenderTheme::isFocused):
        (WebCore::RenderTheme::isPressed):
        (WebCore::RenderTheme::isReadOnlyControl):
        (WebCore::RenderTheme::isHovered):
        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::updatePressedState):
        (WebCore::RenderThemeMac::paintMediaFullscreenButton):
        (WebCore::RenderThemeMac::paintMediaMuteButton):
        (WebCore::RenderThemeMac::paintMediaPlayButton):
        (WebCore::RenderThemeMac::paintMediaSeekBackButton):
        (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
        (WebCore::RenderThemeMac::paintMediaSliderTrack):
        (WebCore::RenderThemeMac::paintMediaSliderThumb):
        (WebCore::RenderThemeMac::paintMediaTimelineContainer):
        (WebCore::RenderThemeMac::paintMediaCurrentTime):
        (WebCore::RenderThemeMac::paintMediaTimeRemaining):
        * rendering/RenderThemeSafari.cpp:
        (WebCore::RenderThemeSafari::paintMediaMuteButton):
        (WebCore::RenderThemeSafari::paintMediaPlayButton):
        (WebCore::RenderThemeSafari::paintMediaSliderTrack):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::operator<<):
        (WebCore::writeSelection):
        * rendering/RenderWidget.cpp:
        (WebCore::RenderWidget::setWidgetGeometry):
        (WebCore::RenderWidget::updateWidgetPosition):
        (WebCore::RenderWidget::nodeAtPoint):
        * rendering/RootInlineBox.cpp:
        (WebCore::isEditableLeaf):
        * rendering/SVGRenderSupport.cpp:
        (WebCore::prepareToRenderSVGContent):
        * rendering/SVGRenderTreeAsText.cpp:
        (WebCore::write):
        * rendering/SVGRootInlineBox.cpp:
        (WebCore::SVGRootInlineBox::buildLayoutInformation):
        (WebCore::SVGRootInlineBox::layoutInlineBoxes):
        (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
        (WebCore::SVGRootInlineBox::buildTextChunks):
        * rendering/style/SVGRenderStyle.cpp:
        (WebCore::SVGRenderStyle::cssPrimitiveToLength):
        * svg/SVGFont.cpp:
        (WebCore::SVGTextRunWalker::walk):
        (WebCore::floatWidthOfSubStringUsingSVGFont):
        (WebCore::Font::drawTextUsingSVGFont):
        * svg/SVGTextContentElement.cpp:
        (WebCore::findInlineTextBoxInTextChunks):
        * svg/graphics/SVGPaintServer.cpp:
        (WebCore::SVGPaintServer::fillPaintServer):
        (WebCore::SVGPaintServer::strokePaintServer):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@40871 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/rendering/RenderListItem.cpp b/WebCore/rendering/RenderListItem.cpp
index bd796cf..fb965d2 100644
--- a/WebCore/rendering/RenderListItem.cpp
+++ b/WebCore/rendering/RenderListItem.cpp
@@ -153,8 +153,8 @@
         if (currChild->isTable() || !currChild->isRenderBlock())
             break;
 
-        if (curr->isListItem() && currChild->style()->htmlHacks() && currChild->element() &&
-            (currChild->element()->hasTagName(ulTag)|| currChild->element()->hasTagName(olTag)))
+        if (curr->isListItem() && currChild->style()->htmlHacks() && currChild->node() &&
+            (currChild->node()->hasTagName(ulTag)|| currChild->node()->hasTagName(olTag)))
             break;
 
         RenderObject* lineBox = getParentOfFirstLineBox(toRenderBlock(currChild), marker);