glwindow/cocoa: remove our view from the parent when closing

Otherwise, when the application reuses the same UIView, we were getting
draw notifications on the previous view/layer's which weren't valid anymore
and were referencing pointers that had been freed.

https://bugzilla.gnome.org/show_bug.cgi?id=753003
This commit is contained in:
Matthew Waters 2016-11-15 22:56:25 +11:00 committed by Tim-Philipp Müller
parent b19e74e02d
commit 66619ed690

View file

@ -197,6 +197,7 @@ gst_gl_window_cocoa_close (GstGLWindow *window)
{ {
GstGLWindowCocoa *window_cocoa = GST_GL_WINDOW_COCOA (window); GstGLWindowCocoa *window_cocoa = GST_GL_WINDOW_COCOA (window);
[[window_cocoa->priv->internal_win_id contentView] removeFromSuperview];
[window_cocoa->priv->internal_win_id release]; [window_cocoa->priv->internal_win_id release];
window_cocoa->priv->internal_win_id = nil; window_cocoa->priv->internal_win_id = nil;
} }