Chromium Code Reviews| Index: Source/core/css/MediaQuery.cpp |
| diff --git a/Source/core/css/MediaQuery.cpp b/Source/core/css/MediaQuery.cpp |
| index 681ac137fa2c7c041b64681a6331fba4556ed79e..9a2318767bfd0c601c1318a6c4761f600a01c3fe 100644 |
| --- a/Source/core/css/MediaQuery.cpp |
| +++ b/Source/core/css/MediaQuery.cpp |
| @@ -35,6 +35,8 @@ |
| namespace WebCore { |
| +DEFINE_GC_INFO(MediaQuery); |
| + |
| // http://dev.w3.org/csswg/cssom/#serialize-a-media-query |
| String MediaQuery::serialize() const |
| { |
| @@ -68,18 +70,18 @@ String MediaQuery::serialize() const |
| return result.toString(); |
| } |
| -static bool expressionCompare(const OwnPtr<MediaQueryExp>& a, const OwnPtr<MediaQueryExp>& b) |
| +static bool expressionCompare(const OwnPtrWillBeMember<MediaQueryExp>& a, const OwnPtrWillBeMember<MediaQueryExp>& b) |
| { |
| return codePointCompare(a->serialize(), b->serialize()) < 0; |
| } |
| -MediaQuery::MediaQuery(Restrictor r, const AtomicString& mediaType, PassOwnPtr<ExpressionVector> expressions) |
| +MediaQuery::MediaQuery(Restrictor r, const AtomicString& mediaType, PassOwnPtrWillBeRawPtr<ExpressionVector> expressions) |
| : m_restrictor(r) |
| , m_mediaType(mediaType.lower()) |
| , m_expressions(expressions) |
| { |
| if (!m_expressions) { |
| - m_expressions = adoptPtr(new ExpressionVector); |
| + m_expressions = adoptPtrWillBeNoop(new ExpressionVector); |
| return; |
| } |
| @@ -100,7 +102,7 @@ MediaQuery::MediaQuery(Restrictor r, const AtomicString& mediaType, PassOwnPtr<E |
| MediaQuery::MediaQuery(const MediaQuery& o) |
| : m_restrictor(o.m_restrictor) |
| , m_mediaType(o.m_mediaType) |
| - , m_expressions(adoptPtr(new ExpressionVector(o.m_expressions->size()))) |
| + , m_expressions(adoptPtrWillBeNoop(new ExpressionVector(o.m_expressions->size()))) |
| , m_serializationCache(o.m_serializationCache) |
| { |
| for (unsigned i = 0; i < m_expressions->size(); ++i) |
| @@ -126,4 +128,13 @@ String MediaQuery::cssText() const |
| return m_serializationCache; |
| } |
| +void MediaQuery::trace(Visitor* visitor) |
| +{ |
| + // We don't support tracing of vectors of OwnPtrs (ie. OwnPtr<Vector<OwnPtr<MediaQuery> > >). |
|
haraken
2014/02/21 01:02:36
Ditto.
OwnPtr<Vector<OwnPtr<MediaQuery> > > => Ve
wibling-chromium
2014/02/21 08:43:08
Same.
|
| + // Since this is a transitional object we are just ifdef'ing it out when oilpan is not enabled. |
| +#if ENABLE(OILPAN) |
| + visitor->trace(m_expressions); |
| +#endif |
| +} |
| + |
| } |