From 5ddde30071f639962dd557c453f2ad01f8f0fd00 Mon Sep 17 00:00:00 2001 From: Kristian Monsen Date: Wed, 8 Sep 2010 12:18:00 +0100 Subject: Merge WebKit at r66666 : Initial merge by git. Change-Id: I57dedeb49859adc9c539e760f0e749768c66626f --- WebCore/rendering/style/ContentData.h | 46 ++++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 20 deletions(-) (limited to 'WebCore/rendering/style/ContentData.h') diff --git a/WebCore/rendering/style/ContentData.h b/WebCore/rendering/style/ContentData.h index 5c3565e..4f964a2 100644 --- a/WebCore/rendering/style/ContentData.h +++ b/WebCore/rendering/style/ContentData.h @@ -2,7 +2,7 @@ * Copyright (C) 2000 Lars Knoll (knoll@kde.org) * (C) 2000 Antti Koivisto (koivisto@kde.org) * (C) 2000 Dirk Mueller (mueller@kde.org) - * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. + * Copyright (C) 2003, 2005, 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) * * This library is free software; you can redistribute it and/or @@ -25,21 +25,18 @@ #ifndef ContentData_h #define ContentData_h -#include "RenderStyleConstants.h" -#include -#include -#include +#include "CounterContent.h" +#include +#include namespace WebCore { -class CounterContent; class StyleImage; struct ContentData : Noncopyable { public: ContentData() : m_type(CONTENT_NONE) - , m_next(0) { } @@ -59,35 +56,44 @@ public: bool dataEquivalent(const ContentData&) const; - StyleImage* image() const { return m_content.m_image; } + StyleImage* image() const + { + ASSERT(isImage()); + return m_content.m_image; + } void setImage(PassRefPtr image) { deleteContent(); m_type = CONTENT_OBJECT; - m_content.m_image = image.releaseRef(); + m_content.m_image = image.leakRef(); } - StringImpl* text() const { return m_content.m_text; } + StringImpl* text() const + { + ASSERT(isText()); + return m_content.m_text; + } void setText(PassRefPtr text) { deleteContent(); m_type = CONTENT_TEXT; - m_content.m_text = text.releaseRef(); + m_content.m_text = text.leakRef(); } - CounterContent* counter() const { return m_content.m_counter; } - void setCounter(CounterContent* counter) + CounterContent* counter() const + { + ASSERT(isCounter()); + return m_content.m_counter; + } + void setCounter(PassOwnPtr counter) { deleteContent(); m_type = CONTENT_COUNTER; - m_content.m_counter = counter; + m_content.m_counter = counter.leakPtr(); } - ContentData* next() const { return m_next; } - void setNext(ContentData* next) - { - m_next = next; - } + ContentData* next() const { return m_next.get(); } + void setNext(PassOwnPtr next) { m_next = next; } private: void deleteContent(); @@ -98,7 +104,7 @@ private: StringImpl* m_text; CounterContent* m_counter; } m_content; - ContentData* m_next; + OwnPtr m_next; }; } // namespace WebCore -- cgit v1.1