Currently we immediately set the display state to displaying snapshot if the max number of snapshot retries is 0. However, this causes timing problems. Namely, it causes hit testing to fail because the hit test needs to happen with the original plugin element. If we instead call beginSnapshottingRunningPlugin, we allow the page some time to perform the hit test with the plugin element before snapshotting. I've only seen this affect layout tests, where we explicitly set the max number of snapshot retries to 0. This fix will allow us to enable snapshotting tests.
<rdar://problem/16745679>
Created attachment 230316 [details] patch
http://trac.webkit.org/changeset/167961