From 658b45ee218ab1ea143632f0f00a494b85590af1 Mon Sep 17 00:00:00 2001 From: Thomas Reufer Date: Wed, 1 Apr 2015 21:18:08 +0200 Subject: activate default surface before deleting pixel buffer --- ovgosd.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ovgosd.c b/ovgosd.c index c3e6825..8a56bcd 100644 --- a/ovgosd.c +++ b/ovgosd.c @@ -655,6 +655,19 @@ public: virtual ~cOvgRenderTarget() { } + static bool MakeDefault(cEgl *egl) + { + if (eglMakeCurrent(egl->display, egl->surface, egl->surface, + egl->context) == EGL_FALSE) + { + ELOG("[EGL] failed to connect context to surface: %s!", + cEgl::errStr(eglGetError())); + return false; + } + egl->currentSurface = egl->surface; + return true; + } + virtual bool MakeCurrent(cEgl *egl) { // if this is a window surface, check for an update after OSD reset @@ -812,6 +825,9 @@ public: virtual bool Execute(cEgl *egl) { + if (!cOvgRenderTarget::MakeDefault(egl)) + return false; + // only destroy pixel buffer surfaces if (m_target->image != VG_INVALID_HANDLE) { -- cgit v1.2.3