<!DOCTYPE html>
<html>
<head>
<title>This tests widow handling when bailing out of simple line layout.</title>
<style>
body {
	width: 494px;
	overflow: hidden;
}

::selection {
	background-color: transparent;
}

div {
    widows: 2;
	font-size: 54px;
}
</style>
</head>
<body>
<div id=foobar>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10</div>
<script>
if (window.internals)
    internals.setPagination("LeftToRightPaginated", 0);
if (window.testRunner)
	testRunner.waitUntilDone();
setTimeout(function() {
	var range = document.createRange();
	range.selectNode(foobar);
	window.getSelection().addRange(range);
	if (window.testRunner)
	    testRunner.notifyDone();
}, 10);
</script>
</body>
</html>
