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

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

Issue 225183016: [CSS Shapes] polygon y-value calc() args serialize incorrectly (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 8 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
« no previous file with comments | « LayoutTests/fast/shapes/parsing/parsing-test-utils.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 4307 matching lines...) Expand 10 before | Expand all | Expand 10 after
4318 argument = args->next(); 4318 argument = args->next();
4319 size -= 2; 4319 size -= 2;
4320 } 4320 }
4321 4321
4322 // <length> <length>, ... <length> <length> -> each pair has 3 elements exce pt the last one 4322 // <length> <length>, ... <length> <length> -> each pair has 3 elements exce pt the last one
4323 if (!size || (size % 3) - 2) 4323 if (!size || (size % 3) - 2)
4324 return nullptr; 4324 return nullptr;
4325 4325
4326 CSSParserValue* argumentX = argument; 4326 CSSParserValue* argumentX = argument;
4327 while (argumentX) { 4327 while (argumentX) {
4328
4328 if (!validUnit(argumentX, FLength | FPercent)) 4329 if (!validUnit(argumentX, FLength | FPercent))
4329 return nullptr; 4330 return nullptr;
4331 RefPtrWillBeRawPtr<CSSPrimitiveValue> xLength = createPrimitiveNumericVa lue(argumentX);
4330 4332
4331 CSSParserValue* argumentY = args->next(); 4333 CSSParserValue* argumentY = args->next();
4332 if (!argumentY || !validUnit(argumentY, FLength | FPercent)) 4334 if (!argumentY || !validUnit(argumentY, FLength | FPercent))
4333 return nullptr; 4335 return nullptr;
4334 4336
4335 RefPtrWillBeRawPtr<CSSPrimitiveValue> xLength = createPrimitiveNumericVa lue(argumentX);
4336 RefPtrWillBeRawPtr<CSSPrimitiveValue> yLength = createPrimitiveNumericVa lue(argumentY); 4337 RefPtrWillBeRawPtr<CSSPrimitiveValue> yLength = createPrimitiveNumericVa lue(argumentY);
4337 4338
4338 shape->appendPoint(xLength.release(), yLength.release()); 4339 shape->appendPoint(xLength.release(), yLength.release());
4339 4340
4340 CSSParserValue* commaOrNull = args->next(); 4341 CSSParserValue* commaOrNull = args->next();
4341 if (!commaOrNull) 4342 if (!commaOrNull)
4342 argumentX = 0; 4343 argumentX = 0;
4343 else if (!isComma(commaOrNull)) 4344 else if (!isComma(commaOrNull))
4344 return nullptr; 4345 return nullptr;
4345 else 4346 else
(...skipping 4109 matching lines...) Expand 10 before | Expand all | Expand 10 after
8455 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill)); 8456 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill));
8456 if (!seenStroke) 8457 if (!seenStroke)
8457 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) ); 8458 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) );
8458 if (!seenMarkers) 8459 if (!seenMarkers)
8459 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers )); 8460 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers ));
8460 8461
8461 return parsedValues.release(); 8462 return parsedValues.release();
8462 } 8463 }
8463 8464
8464 } // namespace WebCore 8465 } // namespace WebCore
OLDNEW
« no previous file with comments | « LayoutTests/fast/shapes/parsing/parsing-test-utils.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698