Changeset 155547 in webkit


Ignore:
Timestamp:
Sep 11, 2013 11:39:09 AM (11 years ago)
Author:
andersca@apple.com
Message:

Stop using deleteAllValues in SVG code
https://bugs.webkit.org/show_bug.cgi?id=121172

Reviewed by Antti Koivisto.

Use OwnPtr for values instead.

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper):
(WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
(WebCore::RenderSVGResourceClipper::removeClientFromCache):
(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
(WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
(WebCore::RenderSVGResourceFilter::removeClientFromCache):
(WebCore::RenderSVGResourceFilter::applyResource):
(WebCore::RenderSVGResourceFilter::postApplyResource):
(WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):

  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker):
(WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
(WebCore::RenderSVGResourceMasker::removeClientFromCache):
(WebCore::RenderSVGResourceMasker::applyResource):

  • rendering/svg/RenderSVGResourceMasker.h:
Location:
trunk/Source/WebCore
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r155546 r155547  
     12013-09-11  Anders Carlsson  <andersca@apple.com>
     2
     3        Stop using deleteAllValues in SVG code
     4        https://bugs.webkit.org/show_bug.cgi?id=121172
     5
     6        Reviewed by Antti Koivisto.
     7
     8        Use OwnPtr for values instead.
     9
     10        * rendering/svg/RenderSVGResourceClipper.cpp:
     11        (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper):
     12        (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
     13        (WebCore::RenderSVGResourceClipper::removeClientFromCache):
     14        (WebCore::RenderSVGResourceClipper::applyClippingToContext):
     15        * rendering/svg/RenderSVGResourceClipper.h:
     16        * rendering/svg/RenderSVGResourceFilter.cpp:
     17        (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
     18        (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
     19        (WebCore::RenderSVGResourceFilter::removeClientFromCache):
     20        (WebCore::RenderSVGResourceFilter::applyResource):
     21        (WebCore::RenderSVGResourceFilter::postApplyResource):
     22        (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
     23        * rendering/svg/RenderSVGResourceFilter.h:
     24        * rendering/svg/RenderSVGResourceMasker.cpp:
     25        (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker):
     26        (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
     27        (WebCore::RenderSVGResourceMasker::removeClientFromCache):
     28        (WebCore::RenderSVGResourceMasker::applyResource):
     29        * rendering/svg/RenderSVGResourceMasker.h:
     30
    1312013-09-10  Simon Fraser  <simon.fraser@apple.com>
    232
  • trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp

    r155412 r155547  
    6161RenderSVGResourceClipper::~RenderSVGResourceClipper()
    6262{
    63     if (m_clipper.isEmpty())
    64         return;
    65 
    66     deleteAllValues(m_clipper);
     63}
     64
     65void RenderSVGResourceClipper::removeAllClientsFromCache(bool markForInvalidation)
     66{
     67    m_clipBoundaries = FloatRect();
    6768    m_clipper.clear();
    68 }
    69 
    70 void RenderSVGResourceClipper::removeAllClientsFromCache(bool markForInvalidation)
    71 {
    72     m_clipBoundaries = FloatRect();
    73     if (!m_clipper.isEmpty()) {
    74         deleteAllValues(m_clipper);
    75         m_clipper.clear();
    76     }
    7769
    7870    markAllClientsForInvalidation(markForInvalidation ? LayoutAndBoundariesInvalidation : ParentOnlyInvalidation);
     
    8274{
    8375    ASSERT(client);
    84     if (m_clipper.contains(client))
    85         delete m_clipper.take(client);
     76    m_clipper.remove(client);
    8677
    8778    markClientForInvalidation(client, markForInvalidation ? BoundariesInvalidation : ParentOnlyInvalidation);
     
    157148    bool missingClipperData = !m_clipper.contains(object);
    158149    if (missingClipperData)
    159         m_clipper.set(object, new ClipperData);
     150        m_clipper.set(object, createOwned<ClipperData>().release());
    160151
    161152    bool shouldCreateClipData = false;
  • trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h

    r155412 r155547  
    7272
    7373    FloatRect m_clipBoundaries;
    74     HashMap<RenderObject*, ClipperData*> m_clipper;
     74    HashMap<RenderObject*, OwnPtr<ClipperData>> m_clipper;
    7575};
    7676
  • trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp

    r155398 r155547  
    6666RenderSVGResourceFilter::~RenderSVGResourceFilter()
    6767{
    68     if (m_filter.isEmpty())
    69         return;
    70 
    71     deleteAllValues(m_filter);
     68}
     69
     70void RenderSVGResourceFilter::removeAllClientsFromCache(bool markForInvalidation)
     71{
    7272    m_filter.clear();
    73 }
    74 
    75 void RenderSVGResourceFilter::removeAllClientsFromCache(bool markForInvalidation)
    76 {
    77     if (!m_filter.isEmpty()) {
    78         deleteAllValues(m_filter);
    79         m_filter.clear();
    80     }
    8173
    8274    markAllClientsForInvalidation(markForInvalidation ? LayoutAndBoundariesInvalidation : ParentOnlyInvalidation);
     
    9183            filterData->state = FilterData::MarkedForRemoval;
    9284        else
    93             delete m_filter.take(client);
     85            m_filter.remove(client);
    9486    }
    9587
     
    156148    }
    157149
    158     OwnPtr<FilterData> filterData(adoptPtr(new FilterData));
     150    auto filterData = createOwned<FilterData>();
    159151    FloatRect targetBoundingBox = object->objectBoundingBox();
    160152
     
    225217        ASSERT(!m_filter.contains(object));
    226218        filterData->savedContext = context;
    227         m_filter.set(object, filterData.leakPtr());
     219        m_filter.set(object, filterData.release());
    228220        return false;
    229221    }
     
    239231        ASSERT(!m_filter.contains(object));
    240232        filterData->savedContext = context;
    241         m_filter.set(object, filterData.leakPtr());
     233        m_filter.set(object, filterData.release());
    242234        return false;
    243235    }
     
    255247
    256248    ASSERT(!m_filter.contains(object));
    257     m_filter.set(object, filterData.leakPtr());
     249    m_filter.set(object, filterData.release());
    258250
    259251    return true;
     
    272264    switch (filterData->state) {
    273265    case FilterData::MarkedForRemoval:
    274         delete m_filter.take(object);
     266        m_filter.remove(object);
    275267        return;
    276268
     
    339331void RenderSVGResourceFilter::primitiveAttributeChanged(RenderObject* object, const QualifiedName& attribute)
    340332{
    341     HashMap<RenderObject*, FilterData*>::iterator it = m_filter.begin();
    342     HashMap<RenderObject*, FilterData*>::iterator end = m_filter.end();
    343333    SVGFilterPrimitiveStandardAttributes* primitve = static_cast<SVGFilterPrimitiveStandardAttributes*>(object->node());
    344334
    345     for (; it != end; ++it) {
    346         FilterData* filterData = it->value;
     335    for (auto it = m_filter.begin(), end = m_filter.end(); it != end; ++it) {
     336        const auto &filterData = it->value;
    347337        if (filterData->state != FilterData::Built)
    348338            continue;
  • trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.h

    r155398 r155547  
    9494    bool fitsInMaximumImageSize(const FloatSize&, FloatSize&);
    9595
    96     HashMap<RenderObject*, FilterData*> m_filter;
     96    HashMap<RenderObject*, OwnPtr<FilterData>> m_filter;
    9797};
    9898
  • trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp

    r155398 r155547  
    4949RenderSVGResourceMasker::~RenderSVGResourceMasker()
    5050{
    51     if (m_masker.isEmpty())
    52         return;
    53 
    54     deleteAllValues(m_masker);
    55     m_masker.clear();
    5651}
    5752
     
    5954{
    6055    m_maskContentBoundaries = FloatRect();
    61     if (!m_masker.isEmpty()) {
    62         deleteAllValues(m_masker);
    63         m_masker.clear();
    64     }
     56    m_masker.clear();
    6557
    6658    markAllClientsForInvalidation(markForInvalidation ? LayoutAndBoundariesInvalidation : ParentOnlyInvalidation);
     
    7062{
    7163    ASSERT(client);
    72 
    73     if (m_masker.contains(client))
    74         delete m_masker.take(client);
     64    m_masker.remove(client);
    7565
    7666    markClientForInvalidation(client, markForInvalidation ? BoundariesInvalidation : ParentOnlyInvalidation);
     
    8575    bool missingMaskerData = !m_masker.contains(object);
    8676    if (missingMaskerData)
    87         m_masker.set(object, new MaskerData);
     77        m_masker.set(object, createOwned<MaskerData>().release());
    8878
    8979    MaskerData* maskerData = m_masker.get(object);
  • trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.h

    r155398 r155547  
    6262
    6363    FloatRect m_maskContentBoundaries;
    64     HashMap<RenderObject*, MaskerData*> m_masker;
     64    HashMap<RenderObject*, OwnPtr<MaskerData>> m_masker;
    6565};
    6666
Note: See TracChangeset for help on using the changeset viewer.