2 /* Copyright (c) Mark J. Kilgard, 1994. */
4 /* This program is freely distributable without licensing fees
5 and is provided without guarantee or warrantee expressed or
6 implied. This program is -not- in the public domain. */
17 /* strdup is actually not a standard ANSI C or POSIX routine
18 so implement a private one for GLUT. OpenVMS does not have a
19 strdup; Linux's standard libc doesn't declare strdup by default
20 (unless BSD or SVID interfaces are requested). */
22 __glutStrdup(const char *string
)
26 copy
= (char*) malloc(strlen(string
) + 1);
35 __glutWarning(char *format
,...)
39 va_start(args
, format
);
40 fprintf(stderr
, "GLUT: Warning in %s: ",
41 __glutProgramName
? __glutProgramName
: "(unamed)");
42 vfprintf(stderr
, format
, args
);
49 glutReportErrors(void)
53 while ((error
= glGetError()) != GL_NO_ERROR
)
54 __glutWarning("GL error: %s", gluErrorString(error
));
59 __glutFatalError(char *format
,...)
63 va_start(args
, format
);
64 fprintf(stderr
, "GLUT: Fatal Error in %s: ",
65 __glutProgramName
? __glutProgramName
: "(unamed)");
66 vfprintf(stderr
, format
, args
);
69 /* || defined(__OS2__) */
79 __glutFatalUsage(char *format
,...)
83 va_start(args
, format
);
84 fprintf(stderr
, "GLUT: Fatal API Usage in %s: ",
85 __glutProgramName
? __glutProgramName
: "(unamed)");
86 vfprintf(stderr
, format
, args
);