http://bugs.winehq.org/show_bug.cgi?id=15397
--- Comment #6 from Andrey Turkin andrey.turkin@gmail.com 2008-09-30 02:07:05 --- (In reply to comment #5)
For the mangled braces, there's one extra in your original suggestion...
No there isn't. There are two opening braces and two closing braces - one pair surrounds code for drawing a polygon, and second pair surrounds code to convert and draw another dot inside polygon. This is true for original code, this is true for my snippet, but your patch removes two opening braces and instead adds two opening braces, one closing braces and remove one closing brace to rebalance.
Moving the startpt definition gives an undeclared identifier error.
Yes it is because and this is clear sign that something wrong with patch. The only consumer of startpt is final PATH_AddEntry which should belong to polygon drawing block; if you move startpt inside that block and code does not compile anymore - that means consumer moved somewhere it doesn't belong to.
Essentially patch should add one line (check for counts[poly]), possibly move one line (startpt definition) and maybe change indentation. Any other changes would probably be wrong.