Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Side by Side Diff: Source/core/css/parser/CSSPropertyParser.cpp

Issue 208313010: Replace raw pointers to GC allocated objects by members in stack allocated objects. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com)
4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved.
5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com>
6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org>
7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved.
9 * Copyright (C) 2012 Intel Corporation. All rights reserved. 9 * Copyright (C) 2012 Intel Corporation. All rights reserved.
10 * 10 *
(...skipping 5310 matching lines...) Expand 10 before | Expand all | Expand 10 after
5321 else { 5321 else {
5322 allowBlur = false; 5322 allowBlur = false;
5323 allowSpread = false; 5323 allowSpread = false;
5324 allowColor = false; 5324 allowColor = false;
5325 } 5325 }
5326 } 5326 }
5327 5327
5328 CSSPropertyID property; 5328 CSSPropertyID property;
5329 CSSPropertyParser* m_parser; 5329 CSSPropertyParser* m_parser;
5330 5330
5331 RefPtrWillBeRawPtr<CSSValueList> values; 5331 RefPtrWillBeMember<CSSValueList> values;
5332 RefPtrWillBeRawPtr<CSSPrimitiveValue> x; 5332 RefPtrWillBeMember<CSSPrimitiveValue> x;
5333 RefPtrWillBeRawPtr<CSSPrimitiveValue> y; 5333 RefPtrWillBeMember<CSSPrimitiveValue> y;
5334 RefPtrWillBeRawPtr<CSSPrimitiveValue> blur; 5334 RefPtrWillBeMember<CSSPrimitiveValue> blur;
5335 RefPtrWillBeRawPtr<CSSPrimitiveValue> spread; 5335 RefPtrWillBeMember<CSSPrimitiveValue> spread;
5336 RefPtrWillBeRawPtr<CSSPrimitiveValue> style; 5336 RefPtrWillBeMember<CSSPrimitiveValue> style;
5337 RefPtrWillBeRawPtr<CSSPrimitiveValue> color; 5337 RefPtrWillBeMember<CSSPrimitiveValue> color;
5338 5338
5339 bool allowX; 5339 bool allowX;
5340 bool allowY; 5340 bool allowY;
5341 bool allowBlur; 5341 bool allowBlur;
5342 bool allowSpread; 5342 bool allowSpread;
5343 bool allowColor; 5343 bool allowColor;
5344 bool allowStyle; // inset or not. 5344 bool allowStyle; // inset or not.
5345 bool allowBreak; 5345 bool allowBreak;
5346 }; 5346 };
5347 5347
(...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after
5837 return CSSBorderImageSliceValue::create(cssValuePool().createValue(quad. release()), m_fill); 5837 return CSSBorderImageSliceValue::create(cssValuePool().createValue(quad. release()), m_fill);
5838 } 5838 }
5839 5839
5840 private: 5840 private:
5841 CSSPropertyParser* m_parser; 5841 CSSPropertyParser* m_parser;
5842 5842
5843 bool m_allowNumber; 5843 bool m_allowNumber;
5844 bool m_allowFill; 5844 bool m_allowFill;
5845 bool m_allowFinalCommit; 5845 bool m_allowFinalCommit;
5846 5846
5847 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_top; 5847 RefPtrWillBeMember<CSSPrimitiveValue> m_top;
5848 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_right; 5848 RefPtrWillBeMember<CSSPrimitiveValue> m_right;
5849 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_bottom; 5849 RefPtrWillBeMember<CSSPrimitiveValue> m_bottom;
5850 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_left; 5850 RefPtrWillBeMember<CSSPrimitiveValue> m_left;
5851 5851
5852 bool m_fill; 5852 bool m_fill;
5853 }; 5853 };
5854 5854
5855 bool CSSPropertyParser::parseBorderImageSlice(CSSPropertyID propId, RefPtrWillBe RawPtr<CSSBorderImageSliceValue>& result) 5855 bool CSSPropertyParser::parseBorderImageSlice(CSSPropertyID propId, RefPtrWillBe RawPtr<CSSBorderImageSliceValue>& result)
5856 { 5856 {
5857 BorderImageSliceParseContext context(this); 5857 BorderImageSliceParseContext context(this);
5858 CSSParserValue* val; 5858 CSSParserValue* val;
5859 while ((val = m_valueList->current())) { 5859 while ((val = m_valueList->current())) {
5860 // FIXME calc() http://webkit.org/b/16662 : calc is parsed but values ar e not created yet. 5860 // FIXME calc() http://webkit.org/b/16662 : calc is parsed but values ar e not created yet.
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
5954 // Make our new value now. 5954 // Make our new value now.
5955 return cssValuePool().createValue(quad.release()); 5955 return cssValuePool().createValue(quad.release());
5956 } 5956 }
5957 5957
5958 private: 5958 private:
5959 CSSPropertyParser* m_parser; 5959 CSSPropertyParser* m_parser;
5960 5960
5961 bool m_allowNumber; 5961 bool m_allowNumber;
5962 bool m_allowFinalCommit; 5962 bool m_allowFinalCommit;
5963 5963
5964 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_top; 5964 RefPtrWillBeMember<CSSPrimitiveValue> m_top;
5965 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_right; 5965 RefPtrWillBeMember<CSSPrimitiveValue> m_right;
5966 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_bottom; 5966 RefPtrWillBeMember<CSSPrimitiveValue> m_bottom;
5967 RefPtrWillBeRawPtr<CSSPrimitiveValue> m_left; 5967 RefPtrWillBeMember<CSSPrimitiveValue> m_left;
5968 }; 5968 };
5969 5969
5970 bool CSSPropertyParser::parseBorderImageQuad(Units validUnits, RefPtrWillBeRawPt r<CSSPrimitiveValue>& result) 5970 bool CSSPropertyParser::parseBorderImageQuad(Units validUnits, RefPtrWillBeRawPt r<CSSPrimitiveValue>& result)
5971 { 5971 {
5972 BorderImageQuadParseContext context(this); 5972 BorderImageQuadParseContext context(this);
5973 CSSParserValue* val; 5973 CSSParserValue* val;
5974 while ((val = m_valueList->current())) { 5974 while ((val = m_valueList->current())) {
5975 if (context.allowNumber() && (validUnit(val, validUnits, HTMLStandardMod e) || val->id == CSSValueAuto)) { 5975 if (context.allowNumber() && (validUnit(val, validUnits, HTMLStandardMod e) || val->id == CSSValueAuto)) {
5976 context.commitNumber(val); 5976 context.commitNumber(val);
5977 } else if (!inShorthand()) { 5977 } else if (!inShorthand()) {
(...skipping 2239 matching lines...) Expand 10 before | Expand all | Expand 10 after
8217 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill)); 8217 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill));
8218 if (!seenStroke) 8218 if (!seenStroke)
8219 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) ); 8219 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) );
8220 if (!seenMarkers) 8220 if (!seenMarkers)
8221 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers )); 8221 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers ));
8222 8222
8223 return parsedValues.release(); 8223 return parsedValues.release();
8224 } 8224 }
8225 8225
8226 } // namespace WebCore 8226 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698