Subpixel rendering: Border thickness and length flooring can result empty borders
due to losing precision during multiple float <-> LayoutUnit conversions.
https://bugs.webkit.org/show_bug.cgi?id=135686

Reviewed by Simon Fraser.

The combination of losing precision and flooring the border thickness/length to avoid
empty border rect drawing can lead to false positives of missing borders.
This patch moves empty border checking right before painting where we can safely use round
instead of floor.

Source/WebCore:

Tests: fast/borders/hidpi-border-width-flooring.html

* rendering/RenderObject.cpp:
(WebCore::drawBorderLineRect):
(WebCore::drawBorderLine):
(WebCore::RenderObject::drawLineForBoxSide):

LayoutTests:

* fast/borders/hidpi-border-width-flooring-expected.html: Added.
* fast/borders/hidpi-border-width-flooring.html: Added.


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