Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5eb77d68 authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change 21059

* changes:
  make sure EGL_ANDROID_swap_rectangle is actually supported before using it
parents 153e4a4c 8458a314
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -166,10 +166,18 @@ void DisplayHardware::init(uint32_t dpy)
        }
    }

    eglQuerySurface(display, surface, EGL_WIDTH,  &mWidth);
    eglQuerySurface(display, surface, EGL_HEIGHT, &mHeight);

#ifdef EGL_ANDROID_swap_rectangle    
    if (strstr(egl_extensions, "EGL_ANDROID_swap_rectangle")) {
        if (eglSetSwapRectangleANDROID(display, surface,
                0, 0, mWidth, mHeight) == EGL_TRUE) {
            // This could fail if this extension is not supported by this
            // specific surface (of config)
            mFlags |= SWAP_RECTANGLE;
        }
    }
    // when we have the choice between UPDATE_ON_DEMAND and SWAP_RECTANGLE
    // choose UPDATE_ON_DEMAND, which is more efficient
    if (mFlags & UPDATE_ON_DEMAND)
@@ -177,6 +185,8 @@ void DisplayHardware::init(uint32_t dpy)
#endif
    

    LOGI("flags     : %08x", mFlags);
    
    mDpiX = mNativeWindow->xdpi;
    mDpiY = mNativeWindow->ydpi;
    mRefreshRate = fbDev->fps; 
@@ -204,9 +214,6 @@ void DisplayHardware::init(uint32_t dpy)
    context = eglCreateContext(display, config, NULL, NULL);
    //checkEGLErrors("eglCreateContext");
    
    eglQuerySurface(display, surface, EGL_WIDTH, &mWidth);
    eglQuerySurface(display, surface, EGL_HEIGHT, &mHeight);
    
    
    /*
     * Gather OpenGL ES extensions