<!DOCTYPE html>
Passes if no crash.
<input id="fileinput" type="file">
<script src="../../resources/run-after-layout-and-paint.js"></script>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
if (window.testRunner && window.eventSender) {
  internals.runtimeFlags.paintUnderInvalidationCheckingEnabled = true;
  document.designMode="on";
  async_test(t => {
    runAfterLayoutAndPaint(t.step_func_done(() => {
      eventSender.beginDragWithFiles(['testpath1/testfile1.txt']);
      var centerX = fileinput.offsetLeft + fileinput.offsetWidth / 2;
      var centerY = fileinput.offsetTop + fileinput.offsetHeight / 2;
      eventSender.mouseMoveTo(centerX, centerY);
      eventSender.mouseUp();
    }));
  });
}
</script>
