Improper synchronization in iPad Safari canvas drawImage()
| Originator: | mike.jumper | ||
| Number: | rdar://11238027 | Date Originated: | 12-Apr-2012 11:54 AM |
| Status: | Open | Resolved: | No |
| Product: | iPad | Product Version: | 5.1 |
| Classification: | Serious Bug | Reproducible: | Always |
12-Apr-2012 11:54 AM Michael Jumper: Summary: In Safari on iPad, when using drawImage() to copy a rectangle of image data from one canvas to another, the drawImage() call runs asynchronously, allowing further draw operations on the source canvas without ensuring that the previous drawImage() call has actually finished. Further drawing on the source canvas has a random chance of affecting the result of a previous drawImage() call. Steps to Reproduce: View the following test page in iPad Safari: http://guac-dev.org/pub/tests/async-test.html Expected Results: The test page renders correctly, as a 27x27 grid of circles, where each row is identical, and each column is unique. Actual Results: The colorization of the circles in the grid is random, as drawing to the source canvas after a drawImage() call has a random chance of affecting the result of that call. Regression: Notes: See attached reference image for expected results.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!