Details
-
Bug
-
Resolution: Out of scope
-
P4: Low
-
4.4.3
-
None
Description
The documentation of QGLWidget::renderText() says that one should call glColor*() to set the text color before calling it. This works as expected during normal execution, but it doesn't work if the whole sequence is recorded into a display list.
The problem is that qt_gl_draw_text() (in qgl.cpp) uses glGetFloatv() to read the current color and store it into the painter's pen. But glGetFloatv() cannot be compiled into the display list. So, while registering a display list, glGetFloatv() is not recorded but it is instead executed immediately, returning whatever color is currently set into the GL context..