glu32: Fix wrapper function for glu[Begin|End]Polygon and gluNextContour.

Sebastian Lackner sebastian at fds-team.de
Mon Sep 15 08:03:25 CDT 2014


Fixes: https://bugs.winehq.org/show_bug.cgi?id=37239

The old wrappers didn't contain the translation from wine_tess to the real tess handle, which caused a deadlock in the linux library.

Moreover we unfortunatly can't forward wine_gluBeginPolygon directly to gluBeginPolygon - there is no way to specify a user data pointer,
which would have the effect that all callbacks are called with a NULL (or invalid) user data - leading to a crash when the callback tries
to access members of the wine_tess structure.

Since gluBeginPolygon / gluEndPolygon / gluNextContour are deprecated anyway and only forwarded to gluTess* functions, the easiest way
to solve that is to do the forwarding directly in Wine. Please note that arg1 in gluNextContour is ignored. This argument is only a hint
anyway, so it should be safe to do that.

---
 dlls/glu32/glu.c | 55 +++++++++++++++++++++++++++++++------------------------
 1 file changed, 31 insertions(+), 24 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-glu32-Fix-wrapper-function-for-glu-Begin-End-Polygon.patch
Type: text/x-patch
Size: 2578 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20140915/b3c2e53b/attachment.bin>


More information about the wine-patches mailing list