Skip to content

Commit f79f842

Browse files
Ryerohvani
authored andcommitted
Replace deprecated gluErrorString with a helper function
1 parent 036b0cf commit f79f842

File tree

1 file changed

+36
-31
lines changed

1 file changed

+36
-31
lines changed

indra/llrender/llgl.cpp

Lines changed: 36 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2297,6 +2297,35 @@ void flush_glerror()
22972297
glGetError();
22982298
}
22992299

2300+
const std::string getGLErrorString(GLenum error)
2301+
{
2302+
switch(error)
2303+
{
2304+
case GL_NO_ERROR:
2305+
return "No Error";
2306+
case GL_INVALID_ENUM:
2307+
return "Invalid Enum";
2308+
case GL_INVALID_VALUE:
2309+
return "Invalid Value";
2310+
case GL_INVALID_OPERATION:
2311+
return "Invalid Operation";
2312+
case GL_INVALID_FRAMEBUFFER_OPERATION:
2313+
return "Invalid Framebuffer Operation";
2314+
case GL_OUT_OF_MEMORY:
2315+
return "Out of Memory";
2316+
case GL_STACK_UNDERFLOW:
2317+
return "Stack Underflow";
2318+
case GL_STACK_OVERFLOW:
2319+
return "Stack Overflow";
2320+
#ifdef GL_TABLE_TOO_LARGE
2321+
case GL_TABLE_TOO_LARGE:
2322+
return "Table too large";
2323+
#endif
2324+
default:
2325+
return "UNKNOWN ERROR";
2326+
}
2327+
}
2328+
23002329
//this function outputs gl error to the log file, does not crash the code.
23012330
void log_glerror()
23022331
{
@@ -2309,17 +2338,8 @@ void log_glerror()
23092338
error = glGetError();
23102339
while (LL_UNLIKELY(error))
23112340
{
2312-
GLubyte const * gl_error_msg = gluErrorString(error);
2313-
if (NULL != gl_error_msg)
2314-
{
2315-
LL_WARNS() << "GL Error: " << error << " GL Error String: " << gl_error_msg << LL_ENDL ;
2316-
}
2317-
else
2318-
{
2319-
// gluErrorString returns NULL for some extensions' error codes.
2320-
// you'll probably have to grep for the number in glext.h.
2321-
LL_WARNS() << "GL Error: UNKNOWN 0x" << std::hex << error << std::dec << LL_ENDL;
2322-
}
2341+
std::string gl_error_msg = getGLErrorString(error);
2342+
LL_WARNS() << "GL Error: 0x" << std::hex << error << std::dec << " GL Error String: " << gl_error_msg << LL_ENDL;
23232343
error = glGetError();
23242344
}
23252345
}
@@ -2333,27 +2353,12 @@ void do_assert_glerror()
23332353
if (LL_UNLIKELY(error))
23342354
{
23352355
quit = true;
2336-
GLubyte const * gl_error_msg = gluErrorString(error);
2337-
if (NULL != gl_error_msg)
2338-
{
2339-
LL_WARNS("RenderState") << "GL Error:" << error<< LL_ENDL;
2340-
LL_WARNS("RenderState") << "GL Error String:" << gl_error_msg << LL_ENDL;
2341-
2342-
if (gDebugSession)
2343-
{
2344-
gFailLog << "GL Error:" << gl_error_msg << std::endl;
2345-
}
2346-
}
2347-
else
2356+
std::string gl_error_msg = getGLErrorString(error);
2357+
LL_WARNS("RenderState") << "GL Error: 0x" << std::hex << error << std::dec << LL_ENDL;
2358+
LL_WARNS("RenderState") << "GL Error String: " << gl_error_msg << LL_ENDL;
2359+
if (gDebugSession)
23482360
{
2349-
// gluErrorString returns NULL for some extensions' error codes.
2350-
// you'll probably have to grep for the number in glext.h.
2351-
LL_WARNS("RenderState") << "GL Error: UNKNOWN 0x" << std::hex << error << std::dec << LL_ENDL;
2352-
2353-
if (gDebugSession)
2354-
{
2355-
gFailLog << "GL Error: UNKNOWN 0x" << std::hex << error << std::dec << std::endl;
2356-
}
2361+
gFailLog << "GL Error: 0x" << std::hex << error << std::dec << " GL Error String: " << gl_error_msg << std::endl;
23572362
}
23582363
}
23592364

0 commit comments

Comments
 (0)