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

Side by Side Diff: Source/core/html/HTMLTextAreaElement.cpp

Issue 795173003: Stricter parsing for rows/cols attribute on textarea (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Patch for landing Created 6 years 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/dom/HTMLTextAreaElement/rows-attribute-expected.txt ('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) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 Apple Inc. All rights reserv ed. 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 Apple Inc. All rights reserv ed.
6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com)
7 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) 7 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org)
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 addPropertyToPresentationAttributeStyle(style, CSSPropertyWhiteSpace , CSSValuePre); 149 addPropertyToPresentationAttributeStyle(style, CSSPropertyWhiteSpace , CSSValuePre);
150 addPropertyToPresentationAttributeStyle(style, CSSPropertyWordWrap, CSSValueNormal); 150 addPropertyToPresentationAttributeStyle(style, CSSPropertyWordWrap, CSSValueNormal);
151 } 151 }
152 } else 152 } else
153 HTMLTextFormControlElement::collectStyleForPresentationAttribute(name, v alue, style); 153 HTMLTextFormControlElement::collectStyleForPresentationAttribute(name, v alue, style);
154 } 154 }
155 155
156 void HTMLTextAreaElement::parseAttribute(const QualifiedName& name, const Atomic String& value) 156 void HTMLTextAreaElement::parseAttribute(const QualifiedName& name, const Atomic String& value)
157 { 157 {
158 if (name == rowsAttr) { 158 if (name == rowsAttr) {
159 int rows = value.toInt(); 159 int rows = 0;
160 if (rows <= 0) 160 if (value.isEmpty() || !parseHTMLInteger(value, rows) || rows <= 0)
161 rows = defaultRows; 161 rows = defaultRows;
162 if (m_rows != rows) { 162 if (m_rows != rows) {
163 m_rows = rows; 163 m_rows = rows;
164 if (renderer()) 164 if (renderer())
165 renderer()->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalid ation(); 165 renderer()->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalid ation();
166 } 166 }
167 } else if (name == colsAttr) { 167 } else if (name == colsAttr) {
168 int cols = value.toInt(); 168 int cols = 0;
169 if (cols <= 0) 169 if (value.isEmpty() || !parseHTMLInteger(value, cols) || cols <= 0)
170 cols = defaultCols; 170 cols = defaultCols;
171 if (m_cols != cols) { 171 if (m_cols != cols) {
172 m_cols = cols; 172 m_cols = cols;
173 if (renderer()) 173 if (renderer())
174 renderer()->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalid ation(); 174 renderer()->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalid ation();
175 } 175 }
176 } else if (name == wrapAttr) { 176 } else if (name == wrapAttr) {
177 // The virtual/physical values were a Netscape extension of HTML 3.0, no w deprecated. 177 // The virtual/physical values were a Netscape extension of HTML 3.0, no w deprecated.
178 // The soft/hard /off values are a recommendation for HTML 4 extension b y IE and NS 4. 178 // The soft/hard /off values are a recommendation for HTML 4 extension b y IE and NS 4.
179 WrapMethod wrap; 179 WrapMethod wrap;
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after
626 { 626 {
627 return true; 627 return true;
628 } 628 }
629 629
630 bool HTMLTextAreaElement::supportsAutofocus() const 630 bool HTMLTextAreaElement::supportsAutofocus() const
631 { 631 {
632 return true; 632 return true;
633 } 633 }
634 634
635 } 635 }
OLDNEW
« no previous file with comments | « LayoutTests/fast/dom/HTMLTextAreaElement/rows-attribute-expected.txt ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698