Fix setPreferredLogicalWidthsDirty when a RenderObject is already dirty.

Previously, RenderObject::setPreferredLogicalWidthsDirty with
MarkingBehavior=MarkContainingBlockChain would not dirty its ancestors
if the RenderObject was already marked as dirty. This patch fixes this
bug by ignoring whether the RenderObject was already marked as dirty.

Review URL: https://codereview.chromium.org/221823010

git-svn-id: svn://svn.chromium.org/blink/trunk@170731 bbb929c8-8fbe-4397-9dbb-9b2b20218538