[Bug 745090] android: Fix changing GL window handle
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Fri Mar 27 13:39:46 PDT 2015
https://bugzilla.gnome.org/show_bug.cgi?id=745090
Ilya Konstantinov <ilya.konstantinov at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
CC| |ilya.konstantinov at gmail.com
| |, slomo at coaxion.net
Resolution|FIXED |---
--- Comment #4 from Ilya Konstantinov <ilya.konstantinov at gmail.com> ---
Commit a12ca13750a15300ab3c718ebde2984dc3d587b3 broke EAGL.
EAGL does not refresh its private fields when it gets a new window handle. When
gst_gl_context_eagl_create_context is called, the (async) window handle didn't
arrive yet, so:
if (window_handle) {
...
} else {
priv->eagl_layer = NULL; // <-- OUCH!
priv->framebuffer = 0;
priv->color_renderbuffer = 0;
priv->depth_renderbuffer = 0;
}
This obviously causes everything else down the line not to work, starting with:
void gst_gl_context_eagl_resize (GstGLContextEagl * eagl_context)
{
int width, height;
glBindRenderbuffer (GL_RENDERBUFFER,
eagl_context->priv->color_renderbuffer);
[eagl_context->priv->eagl_context renderbufferStorage:GL_RENDERBUFFER
fromDrawable:eagl_context->priv->eagl_layer];
// ^ = nil
...
P.S. Sebastian, eventually the way to find this bug was simply to add an "Open
GL ES Error" breakpoint (that's an Xcode feature)
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list