Go to file
Jocelyn Turcotte ab79e832e6 Do not parent the shader program to the QOpenGLContext
When the last QOpenGLContext in a share group is destroyed, all the
remaining alive QOpenGL* objects have their resource invalidated.

This happens under QOpenGLContext::destroy, but before any QObject
children of the QOpenGLContext is destroyed by the QObject destructor.
This is currently an issue with ANGLE that could be fixed in its own
code, but that is still better for us to be covered against.

This means that the OpenGL resource is assumed to be destroyed with
the context by the driver, but this isn't always the same.

Fix an instance of this in QOpenGLTextureGlyphCache by explicitly
owning the blit QOpenGLShaderProgram instead of parenting it under
the current GL context. The very same resource invalidation system
will prevent anything bad to happen if the QOpenGLContext is
destroyed before the QOpenGLTextureGlyphCache.

Task-number: QTBUG-41588
Change-Id: Ic3bc69b07bcbdcf7d699ea9139b2e34b04e642e5
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-10-23 18:13:12 +02:00
bin syncqt: Fix regexp capturing class names of partial specialisation 2014-07-08 16:12:44 +02:00
config.tests Update license headers and add new license files 2014-09-24 12:26:19 +02:00
dist QSql changes for Qt 5.4.0 changelog 2014-09-30 09:54:47 +02:00
doc Move Qt Core examples under a common subdirectory 2014-10-17 14:57:13 +02:00
examples Further restrict the threaded opengl example 2014-10-23 18:11:08 +02:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs embed a VERSIONINFO resource into Qt plugins 2014-10-20 14:47:53 +02:00
qmake Run VS custom build step in new environment variable scope. 2014-10-23 08:04:13 +02:00
src Do not parent the shader program to the QOpenGLContext 2014-10-23 18:13:12 +02:00
tests Adjust the layout if a QGraphicsWidget is explicitly hidden 2014-10-23 07:17:50 +02:00
tools Check '-I' directories for auto-detection of features 2014-10-23 17:12:44 +02:00
util Update license headers and add new license files 2014-09-24 12:26:19 +02:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore Remove qtdemo from gitignore 2014-09-17 12:38:55 +02:00
.qmake.conf Enable -Werror for all of qtbase 2013-09-04 01:50:10 +02:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
configure Use :- instead of - for empty environment variables 2014-10-10 23:34:27 +02:00
configure.bat Update license headers and add new license files 2014-09-24 12:26:19 +02:00
header.BSD Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.FDL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL3 Android: Don't include Apache code under LGPLv2 license 2014-10-02 05:59:17 +02:00
header.LGPL21 Added header.LGPL21 2014-08-23 07:17:35 +02:00
header.LGPL-ONLY Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
INSTALL Doc: Update links in INSTALL file 2014-01-16 20:37:25 +01:00
LGPL_EXCEPTION.txt Change copyrights from Nokia to Digia 2012-09-22 19:20:11 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.LGPLv3 Update license headers and add new license files 2014-09-24 12:26:19 +02:00
LICENSE.LGPLv21 Update license headers and add new license files 2014-09-24 12:26:19 +02:00
LICENSE.PREVIEW.COMMERCIAL Update LICENSE.PREVIEW.COMMERCIAL license 2013-06-03 20:04:26 +02:00
qtbase.pro untangle use of system vs. shell path(-list) semantics 2014-04-30 16:56:54 +02:00
sync.profile ANGLE: upgrade to 2.1~07d49ef5350a 2014-08-05 16:43:22 +02:00