mirror of
https://github.com/mpv-player/mpv
synced 2025-02-03 05:31:34 +00:00
vo_opengl: vaapi: fix cleanup
Don't call eglDestroyImageKHR() on the same ID possibly more than once. Clear the image reference on termination, or we would leak up to 1 image per VO recreation.
This commit is contained in:
parent
8d8a2045bd
commit
5786d07450
@ -50,6 +50,7 @@ static void unref_image(struct gl_hwdec *hw)
|
||||
for (int n = 0; n < 4; n++) {
|
||||
if (p->images[n])
|
||||
hw->gl->DestroyImageKHR(eglGetCurrentDisplay(), p->images[n]);
|
||||
p->images[n] = 0;
|
||||
}
|
||||
|
||||
va_lock(p->ctx);
|
||||
@ -83,6 +84,7 @@ static void destroy_textures(struct gl_hwdec *hw)
|
||||
static void destroy(struct gl_hwdec *hw)
|
||||
{
|
||||
struct priv *p = hw->priv;
|
||||
unref_image(hw);
|
||||
destroy_textures(hw);
|
||||
va_destroy(p->ctx);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user