| Index: Source/core/page/SpatialNavigation.cpp
 | 
| diff --git a/Source/core/page/SpatialNavigation.cpp b/Source/core/page/SpatialNavigation.cpp
 | 
| index 952bfd7e0bf67e00b45727706b915133692fd314..1037c8bd21cc1b55974ca9d3dfcd2e4083a0708d 100644
 | 
| --- a/Source/core/page/SpatialNavigation.cpp
 | 
| +++ b/Source/core/page/SpatialNavigation.cpp
 | 
| @@ -366,8 +366,11 @@ static LayoutRect rectToAbsoluteCoordinates(LocalFrame* initialFrame, const Layo
 | 
|          // FIXME: Spatial navigation is broken for OOPI.
 | 
|          Element* element = frame->deprecatedLocalOwner();
 | 
|          if (element) {
 | 
| -            for (; element; element = element->offsetParent())
 | 
| +            do {
 | 
|                  rect.move(element->offsetLeft(), element->offsetTop());
 | 
| +                LayoutObject* layoutObject = element->layoutObject();
 | 
| +                element = layoutObject ? layoutObject->offsetParent() : nullptr;
 | 
| +            } while (element);
 | 
|              rect.move((-toLocalFrame(frame)->view()->scrollOffset()));
 | 
|          }
 | 
|      }
 | 
| 
 |