ASSERTION FAILED: !style->propertyIsImportant(propertyID) in WebCore::setTextDecorationProperty
https://bugs.webkit.org/show_bug.cgi?id=122097

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-21
Reviewed by Ryosuke Niwa.

Source/WebCore:

When remove format command is called we pushdown the ancestor style
down to its children. Currently applying inline style to iframe
while pushing down style which causes iframe to be reinserted in tree and
triggres again subframe loading which repeats everytime and finally
crash happens. So we should avoid applying inline style to iframe
element as it doesnot reflect in its content while pushing down style
on it.

And ASSERT call has been removed from setTextDecoration property as
the scenario is perfectly valid case.

Test: editing/execCommand/remove-format-textdecoration-in-iframe.html

* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Return if
element is iframe.
* editing/EditingStyle.cpp:
(WebCore::StyleChange::setTextDecorationProperty): Remove ASSERT.

LayoutTests:

Added Test cases to verify that crash does not happen in scenario when
remove format command is executed on selection containing the iframe
element and when textdecoration style is defined as !important and
need to pushDown to iframe.

* editing/execCommand/remove-format-textdecoration-in-iframe-expected.txt: Added.
* editing/execCommand/remove-format-textdecoration-in-iframe.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157710 268f45cc-cd09-0410-ab3c-d52691b4dbfc