glGetError(3G)glGetError(3G)NAMEglGetError - return error information
SYNOPSIS
GLenum glGetError(
void );
DESCRIPTIONglGetError() returns the value of the error option. Each detectable
error is assigned a numeric code and symbolic name. When an error
occurs, the error option is set to the appropriate error code value.
No other errors are recorded until glGetError() is called, the error
code is returned, and the option is reset to GL_NO_ERROR. If a call to
glGetError() returns GL_NO_ERROR, there has been no detectable error
since the last call to glGetError(), or since the GL was initialized.
To allow for distributed implementations, there may be several error
options. If any single error option has recorded an error, the value of
that option is returned and that option is reset to GL_NO_ERROR when
glGetError() is called. If more than one option has recorded an error,
glGetError() returns and clears an arbitrary error option value. Thus,
glGetError() should always be called in a loop, until it returns
GL_NO_ERROR, if all error options are to be reset.
Initially, all error options are set to GL_NO_ERROR.
The following errors are currently defined: No error has been recorded.
The value of this symbolic constant is guaranteed to be 0. An unac‐
ceptable value is specified for an enumerated argument. The offending
command is ignored, and has no other side effect than to set the error
option. A numeric argument is out of range. The offending command is
ignored, and has no other side effect than to set the error option.
The specified operation is not allowed in the current state. The
offending command is ignored, and has no other side effect than to set
the error option. This command would cause a stack overflow. The
offending command is ignored, and has no other side effect than to set
the error option. This command would cause a stack underflow. The
offending command is ignored, and has no other side effect than to set
the error option. There is not enough memory left to execute the com‐
mand. The state of the GL is undefined, except for the state of the
error options, after this error is recorded. The specified table
exceeds the implementation's maximum supported table size. The offend‐
ing command is ignored, and has no other side effect than to set the
error option.
When an error option is set, results of a GL operation are undefined
only if GL_OUT_OF_MEMORY has occurred. In all other cases, the command
generating the error is ignored and has no effect on the GL state or
frame buffer contents. If the generating command returns a value, it
returns 0. If glGetError() itself generates an error, it returns 0.
NOTES
GL_TABLE_TOO_LARGE was introduced in GL version 1.2.
ERRORS
GL_INVALID_OPERATION is generated if glGetError() is executed between
the execution of glBegin() and the corresponding execution of glEnd().
In this case glGetError() returns 0.
glGetError(3G)