From 5a40a4da413072369d6e51e8a60e6ed7ddc28723 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Tue, 20 Feb 2007 21:05:12 +0000 Subject: [PATCH] Need to set DLSCL_ADMINISTRATIVE coop level in directfb driver, or YUV overlay creation will fail in newer DirectFB versions. Fixes Bugzilla #394. --- src/video/directfb/SDL_DirectFB_yuv.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/video/directfb/SDL_DirectFB_yuv.c b/src/video/directfb/SDL_DirectFB_yuv.c index 583b8274e..ad0910e98 100644 --- a/src/video/directfb/SDL_DirectFB_yuv.c +++ b/src/video/directfb/SDL_DirectFB_yuv.c @@ -118,6 +118,15 @@ static DFBResult CreateYUVSurface(_THIS, struct private_yuvhwdata *hwdata, break; } + /* Need to set coop level or newer DirectFB versions will fail here. */ + ret = layer->SetCooperativeLevel (layer, DLSCL_ADMINISTRATIVE); + if (ret) + { + SetDirectFBError("IDirectFBDisplayLayer::SetCooperativeLevel() failed", ret); + layer->Release (layer); + return ret; + } + ret = layer->SetConfiguration (layer, &conf); if (ret) {