<!DOCTYPE html>
<html>
<head>
<style type='text/css'>
  #overflow {
    overflow:auto;
    width:200px;
    height:200px;
    will-change:transform;
  }
</style>
<script type='text/javascript'>
  function doTest() {
    var canvas = document.createElement('canvas');
    canvas.width = 1;
    canvas.height = 400;
    var content = document.getElementById("content");
    content.onload = function() {
      var overflow = document.getElementById("overflow");
        overflow.scrollTop = 50;
        if (window.testRunner)
          testRunner.notifyDone();
    }
    content.src = canvas.toDataURL();
  }
  window.addEventListener('load', doTest, false);

  if (window.testRunner)
    testRunner.waitUntilDone();
</script>
</head>
<body>
  <!-- This test passes if a partially scrolled scrollbar appears -->
  <div id="overflow">
    <img id="content">
  </div>
</body>
</html>
