@@ -359,7 +359,7 @@ void eGL::createOutputTexture2D(eGLImage &eglImage)
* - eglCreateImageKHR / eglDestroyImageKHR
* - glEGLImageTargetTexture2DOES
*
- * \return 0 on success, or -ENODEV on failure
+ * \return 0 on success, or negative error code on failure
*/
int eGL::initEGLContext()
{
@@ -382,6 +382,9 @@ int eGL::initEGLContext()
EGLint numConfigs;
EGLConfig config;
+ if (context_ != EGL_NO_CONTEXT)
+ return -EEXIST;
+
if (!eglBindAPI(EGL_OPENGL_ES_API)) {
LOG(eGL, Error) << "API bind fail";
goto fail;
If the initialization is already done, reject further attempts, otherwise resources would be leaked. Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> --- src/libcamera/egl.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)