Index: Source/core/css/MediaQuery.cpp |
diff --git a/Source/core/css/MediaQuery.cpp b/Source/core/css/MediaQuery.cpp |
index 681ac137fa2c7c041b64681a6331fba4556ed79e..fc1dc9e6735d7293360173b7a0d82a4072a440ae 100644 |
--- a/Source/core/css/MediaQuery.cpp |
+++ b/Source/core/css/MediaQuery.cpp |
@@ -68,18 +68,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<ExpressionHeapVector> expressions) |
: m_restrictor(r) |
, m_mediaType(mediaType.lower()) |
, m_expressions(expressions) |
{ |
if (!m_expressions) { |
- m_expressions = adoptPtr(new ExpressionVector); |
+ m_expressions = adoptPtrWillBeNoop(new ExpressionHeapVector); |
return; |
} |
@@ -100,7 +100,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 ExpressionHeapVector(o.m_expressions->size()))) |
, m_serializationCache(o.m_serializationCache) |
{ |
for (unsigned i = 0; i < m_expressions->size(); ++i) |
@@ -126,4 +126,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> > >). |
+ // 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 |
+} |
+ |
} |