I do the following in a Qt Quick application:
1. Set QApplication::setGraphicsSystem("openvg") (this should be on by default in Symbian^3?)
2. Manually render a splash screen with QPainter.
3. Call QDeclarativeView::setViewport(new QGLWidget).
4. Display QML.
After normal operation for a few seconds, I get the following warning at about 40 times per second: QEglContext::swapBuffers(): "Bad surface (0x300D)"
The UI does not render any updates after this. However, the UI still responds to input.
This does not occur in PR1.2 or Anna with Qt 4.7.3.
The problem does not occur immediately if I do not render my splash screen. However, the problem immediately reappears under these conditions after background and foregrounding the application. The splash screen is a QWidget with the following flags: Qt::SplashScreen | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint
The problem also does not occur if I do not set the viewport. However, I am then running into a crash problem with an external component (the presence of the external component does not affect this reported bug).
The problem does not appear if I set the graphics system to "opengl" instead of "openvg".