2010-06-16 Darin Adler <darin@apple.com>
Reviewed by David Levin.
Deploy adoptRef in more places, including all HTML and MathML elements
https://bugs.webkit.org/show_bug.cgi?id=39941
* wtf/ThreadSafeShared.h: Made the constructor protected and removed the
unneeded support for initial reference counts other than 1.
2010-06-16 Darin Adler <darin@apple.com>
Reviewed by David Levin.
Deploy adoptRef in more places, including all HTML and MathML elements
https://bugs.webkit.org/show_bug.cgi?id=39941
* dom/Element.cpp:
(WebCore::Element::dispatchAttrRemovalEvent): Use create instead of new
in commented-out code.
(WebCore::Element::dispatchAttrAdditionEvent): Ditto.
* dom/Node.h: Removed now-unused CreateElementZeroRefCount and
CreateHTMLElementZeroRefCount.
* editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::insertList): Use create instead of new, fixing
a storage leak.
* editing/ModifySelectionListLevel.cpp:
(WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevel):
Removed "WithType" from function name. Use create instead of new, fixing a
storage leak.
(WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Use
create instead of new, fixing a storage leak.
* storage/IndexedDatabaseImpl.cpp:
(WebCore::IndexedDatabaseImpl::create): Use adoptRef, fixing a storage leak.
* editing/ModifySelectionListLevel.h: Added create functions.
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::HTMLAnchorElement):
* html/HTMLFrameOwnerElement.cpp:
(WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement):
* html/HTMLMeterElement.cpp:
(WebCore::HTMLMeterElement::HTMLMeterElement):
* html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::HTMLProgressElement):
Removed code to explicitly pass CreateHTMLElement construction type since that's
now the type used for all HTML elements.
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::HTMLFormControlElement):
* html/HTMLFormControlElement.h:
Removed construction type argument, since CreateHTMLElement is now the type used
for all HTML elements.
* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::MathMLElement): Removed construction type of
CreateStyledElementZeroRefCount so we'll use the default construction
type, CreateStyledElement.
(WebCore::MathMLElement::create): Use adoptRef.
* mathml/MathMLElement.h: Made isMathMLElement function private and
removed unneeded override of createRenderer, because it did the
same thing as the base class's createRenderer function.
* mathml/MathMLInlineContainerElement.cpp:
(WebCore::MathMLInlineContainerElement::create): Use adoptRef.
(WebCore::MathMLInlineContainerElement::createRenderer):
Removed unnecessarily initialization of local variable and removed the
case for mathTag, since that uses a different derived class.
* mathml/MathMLInlineContainerElement.h: Made createRenderrer override
private.
* mathml/MathMLMathElement.cpp:
(WebCore::MathMLMathElement::MathMLMathElement): Marked inline since
it is called in only one place.
(WebCore::MathMLMathElement::create): Use adoptRef.
(WebCore::MathMLMathElement::createRenderer): Added. Creates a
RenderMathMLMath object.
* mathml/MathMLMathElement.h: Made constructor private and added a
private override of createRenderer.
* mathml/MathMLTextElement.cpp:
(WebCore::MathMLTextElement::MathMLTextElement): Marked inline since
it is called in only one place.
(WebCore::MathMLTextElement::create): Use adoptRef.
(WebCore::MathMLTextElement::createRenderer): Changed to call through
to the base class instead of calling RenderObject::createObject directly.
* mathml/MathMLTextElement.h: Made the constructor and createRenderer
function private.
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::RenderFileUploadControl):
Removed an unneeded initializer.
* rendering/RenderProgress.cpp: Tweaked includes.
* rendering/ShadowElement.cpp: Added a "using namespace" directive.
* rendering/ShadowElement.h: Tweaked formatting. Made more functions
private.
* editing/DeleteButton.cpp:
(WebCore::DeleteButton::create):
* html/HTMLAudioElement.cpp:
(WebCore::HTMLAudioElement::create):
(WebCore::HTMLAudioElement::createForJSConstructor):
* html/HTMLBRElement.cpp:
(WebCore::HTMLBRElement::create):
* html/HTMLBaseElement.cpp:
(WebCore::HTMLBaseElement::create):
* html/HTMLBaseFontElement.cpp:
(WebCore::HTMLBaseFontElement::create):
* html/HTMLBlockquoteElement.cpp:
(WebCore::HTMLBlockquoteElement::create):
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::create):
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::create):
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::create):
* html/HTMLDListElement.cpp:
(WebCore::HTMLDListElement::create):
* html/HTMLDataGridCellElement.cpp:
(WebCore::HTMLDataGridCellElement::create):
* html/HTMLDataGridColElement.cpp:
(WebCore::HTMLDataGridColElement::create):
* html/HTMLDataGridElement.cpp:
(WebCore::HTMLDataGridElement::create):
* html/HTMLDataGridRowElement.cpp:
(WebCore::HTMLDataGridRowElement::create):
* html/HTMLDataListElement.cpp:
(WebCore::HTMLDataListElement::create):
* html/HTMLDivElement.cpp:
(WebCore::HTMLDivElement::create):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::create):
* html/HTMLElement.h:
(WebCore::HTMLElement::HTMLElement):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::create):
* html/HTMLFontElement.cpp:
(WebCore::HTMLFontElement::create):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::create):
* html/HTMLFrameSetElement.cpp:
(WebCore::HTMLFrameSetElement::create):
* html/HTMLHRElement.cpp:
(WebCore::HTMLHRElement::create):
* html/HTMLHeadElement.cpp:
(WebCore::HTMLHeadElement::create):
* html/HTMLHeadingElement.cpp:
(WebCore::HTMLHeadingElement::create):
* html/HTMLHtmlElement.cpp:
(WebCore::HTMLHtmlElement::create):
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::create):
(WebCore::HTMLImageElement::createForJSConstructor):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::create):
* html/HTMLIsIndexElement.cpp:
(WebCore::HTMLIsIndexElement::create):
* html/HTMLKeygenElement.cpp:
(WebCore::HTMLKeygenElement::create):
* html/HTMLLIElement.cpp:
(WebCore::HTMLLIElement::create):
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::create):
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::create):
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::create):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::create):
* html/HTMLMarqueeElement.cpp:
(WebCore::HTMLMarqueeElement::create):
* html/HTMLMenuElement.cpp:
(WebCore::HTMLMenuElement::create):
* html/HTMLMetaElement.cpp:
(WebCore::HTMLMetaElement::create):
* html/HTMLModElement.cpp:
(WebCore::HTMLModElement::create):
* html/HTMLNoScriptElement.cpp:
(WebCore::HTMLNoScriptElement::create):
* html/HTMLOListElement.cpp:
(WebCore::HTMLOListElement::create):
* html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::create):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::create):
(WebCore::HTMLOptionElement::createForJSConstructor):
* html/HTMLParagraphElement.cpp:
(WebCore::HTMLParagraphElement::create):
* html/HTMLParamElement.cpp:
(WebCore::HTMLParamElement::create):
* html/HTMLPreElement.cpp:
(WebCore::HTMLPreElement::create):
* html/HTMLQuoteElement.cpp:
(WebCore::HTMLQuoteElement::create):
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::create):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::create):
* html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::create):
* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::create):
* html/HTMLTableCaptionElement.cpp:
(WebCore::HTMLTableCaptionElement::create):
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::create):
* html/HTMLTableColElement.cpp:
(WebCore::HTMLTableColElement::create):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::create):
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::create):
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::create):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::create):
* html/HTMLTitleElement.cpp:
(WebCore::HTMLTitleElement::create):
* html/HTMLUListElement.cpp:
(WebCore::HTMLUListElement::create):
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::create):
* loader/ImageDocument.cpp:
(WebCore::ImageDocumentElement::create):
* rendering/MediaControlElements.cpp:
(WebCore::MediaControlShadowRootElement::create):
(WebCore::MediaControlElement::create):
(WebCore::MediaControlTimelineContainerElement::create):
(WebCore::MediaControlVolumeSliderContainerElement::create):
(WebCore::MediaControlStatusDisplayElement::create):
(WebCore::MediaControlMuteButtonElement::create):
(WebCore::MediaControlPlayButtonElement::create):
(WebCore::MediaControlSeekButtonElement::create):
(WebCore::MediaControlRewindButtonElement::create):
(WebCore::MediaControlReturnToRealtimeButtonElement::create):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
(WebCore::MediaControlTimelineElement::create):
(WebCore::MediaControlVolumeSliderElement::create):
(WebCore::MediaControlFullscreenButtonElement::create):
(WebCore::MediaControlTimeDisplayElement::create):
* rendering/RenderSlider.cpp:
(WebCore::SliderThumbElement::create):
* rendering/TextControlInnerElements.cpp:
(WebCore::TextControlInnerElement::create):
(WebCore::TextControlInnerTextElement::create):
(WebCore::SearchFieldResultsButtonElement::create):
(WebCore::SearchFieldCancelButtonElement::create):
(WebCore::SpinButtonElement::create):
Use adoptRef.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@61293 268f45cc-cd09-0410-ab3c-d52691b4dbfc
92 files changed