Skip to content

Commit

Permalink
Fixed Arch Linux compile error with GCC 14.
Browse files Browse the repository at this point in the history
Closes #484
  • Loading branch information
AnotherCommander committed Jun 14, 2024
1 parent f882b71 commit f930b3a
Showing 1 changed file with 13 additions and 10 deletions.
23 changes: 13 additions & 10 deletions src/Core/OOPolygonSprite.m
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,9 @@ - (BOOL) loadPolygons:(NSArray *)dataArray outlineWidth:(float)outlineWidth;

static void APIENTRY ErrorCallback(GLenum error, void *polygonData);

// this is needed to maintain compatibility with GCC 14+
typedef GLvoid (*TessFuncPtr)();


@implementation OOPolygonSprite

Expand Down Expand Up @@ -283,11 +286,11 @@ - (BOOL) loadPolygons:(NSArray *)dataArray outlineWidth:(float)outlineWidth
dataArray = DataArrayToPoints(&polygonData, dataArray);

/*** Tesselate polygon fill ***/
gluTessCallback(tesselator, GLU_TESS_BEGIN_DATA, TessBeginCallback);
gluTessCallback(tesselator, GLU_TESS_VERTEX_DATA, TessVertexCallback);
gluTessCallback(tesselator, GLU_TESS_END_DATA, TessEndCallback);
gluTessCallback(tesselator, GLU_TESS_ERROR_DATA, ErrorCallback);
gluTessCallback(tesselator, GLU_TESS_COMBINE_DATA, TessCombineCallback);
gluTessCallback(tesselator, GLU_TESS_BEGIN_DATA, (TessFuncPtr)TessBeginCallback);
gluTessCallback(tesselator, GLU_TESS_VERTEX_DATA, (TessFuncPtr)TessVertexCallback);
gluTessCallback(tesselator, GLU_TESS_END_DATA, (TessFuncPtr)TessEndCallback);
gluTessCallback(tesselator, GLU_TESS_ERROR_DATA, (TessFuncPtr)ErrorCallback);
gluTessCallback(tesselator, GLU_TESS_COMBINE_DATA, (TessFuncPtr)TessCombineCallback);

gluTessBeginPolygon(tesselator, &polygonData);
SVGDumpBeginGroup(&polygonData, @"Fill");
Expand Down Expand Up @@ -351,11 +354,11 @@ - (BOOL) loadPolygons:(NSArray *)dataArray outlineWidth:(float)outlineWidth
polygonData.generatingOutline = YES;
#endif

gluTessCallback(tesselator, GLU_TESS_BEGIN_DATA, TessBeginCallback);
gluTessCallback(tesselator, GLU_TESS_VERTEX_DATA, TessVertexCallback);
gluTessCallback(tesselator, GLU_TESS_END_DATA, TessEndCallback);
gluTessCallback(tesselator, GLU_TESS_ERROR_DATA, ErrorCallback);
gluTessCallback(tesselator, GLU_TESS_COMBINE_DATA, TessCombineCallback);
gluTessCallback(tesselator, GLU_TESS_BEGIN_DATA, (TessFuncPtr)TessBeginCallback);
gluTessCallback(tesselator, GLU_TESS_VERTEX_DATA, (TessFuncPtr)TessVertexCallback);
gluTessCallback(tesselator, GLU_TESS_END_DATA, (TessFuncPtr)TessEndCallback);
gluTessCallback(tesselator, GLU_TESS_ERROR_DATA, (TessFuncPtr)ErrorCallback);
gluTessCallback(tesselator, GLU_TESS_COMBINE_DATA, (TessFuncPtr)TessCombineCallback);
gluTessProperty(tesselator, GLU_TESS_WINDING_RULE, GLU_TESS_WINDING_POSITIVE);

gluTessBeginPolygon(tesselator, &polygonData);
Expand Down

0 comments on commit f930b3a

Please sign in to comment.