On Saturday 19 October 2002 2:47 pm, Andy Ross wrote:
> [Er, oops.  The last one had the patch but not the text.  Apologies!]
>
> OK, looking more carefully, I think I see how this is supposed to
> work.  Because not all OpenGL implementations export the
> PointParameter functions, Curt is using function pointers and the
> GetProcAddress stuff.
>
> This is fine; the only bug is that the names of the function pointers
> are identical to the names of the functions.  This is attractive,
> because you can use the same syntax for both.
>
> But it doesn't work across all implementations.  In some, the
> definition of the functions are as "regular" functions, not pointers.
> So while the invocation syntax is the same, the assignment syntax is
> not.  You can't redeclare a regular function as a function pointer --
> they're not compatible types.
>
> The following patch just renames the symbol used to avoid the
> collision.  It seems to work for me.
>
> Andy
>
>
> diff -u -w -r1.31 main.cxx
> --- main.cxx    17 Oct 2002 04:34:32 -0000      1.31
> +++ main.cxx    19 Oct 2002 18:38:22 -0000
> @@ -141,16 +141,16 @@
>     typedef void (APIENTRY * PFNGLPOINTPARAMETERFVEXTPROC)(GLenum pname,
>                                                            const GLfloat
> *params);
>
> -  PFNGLPOINTPARAMETERFEXTPROC glPointParameterfEXT = 0;
> -  PFNGLPOINTPARAMETERFVEXTPROC glPointParameterfvEXT = 0;
> +  PFNGLPOINTPARAMETERFEXTPROC gl_PointParameterfEXT = 0;
> +  PFNGLPOINTPARAMETERFVEXTPROC g_lPointParameterfvEXT = 0;

Is this last line correct? The rest of the patch uses gl_PointParameterfvEXT

FWIW I couldn't get the patch to apply and I noticed while applying changes 

_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to