http://bugs.winehq.org/show_bug.cgi?id=22356
--- Comment #18 from Henri Verbeet hverbeet@gmail.com 2010-04-28 06:28:02 --- (In reply to comment #9)
Hopefully this helps there. I will submit the current fix anyway since it is correct for one class of systems.
I'll save you some trouble then, the patch doesn't make sense to me. If you consistently swap the contents of two surfaces they should also get eachothers flags, otherwise the flags are inconsistent with the surface contents. In that regard, I'm also not sure if the reason that flip_surface() doesn't just copy the entire surface's contents is just a miguided optimization, or if there's a real reason behind that.