-#if ANDROID_API_LEVEL >= 23
-static EGLBoolean
-droid_set_damage_region(_EGLDriver *drv,
- _EGLDisplay *disp,
- _EGLSurface *draw, const EGLint* rects, EGLint n_rects)
-{
- struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp);
- struct dri2_egl_surface *dri2_surf = dri2_egl_surface(draw);
- android_native_rect_t* droid_rects = NULL;
- int ret;
-
- if (n_rects == 0)
- return EGL_TRUE;
-
- droid_rects = malloc(n_rects * sizeof(android_native_rect_t));
- if (droid_rects == NULL)
- return _eglError(EGL_BAD_ALLOC, "eglSetDamageRegionKHR");
-
- for (EGLint num_drects = 0; num_drects < n_rects; num_drects++) {
- EGLint i = num_drects * 4;
- droid_rects[num_drects].left = rects[i];
- droid_rects[num_drects].bottom = rects[i + 1];
- droid_rects[num_drects].right = rects[i] + rects[i + 2];
- droid_rects[num_drects].top = rects[i + 1] + rects[i + 3];
- }
-
- /*
- * XXX/TODO: Need to check for other return values
- */
-
- ret = native_window_set_surface_damage(dri2_surf->window, droid_rects, n_rects);
- free(droid_rects);
-
- return ret == 0 ? EGL_TRUE : EGL_FALSE;
-}
-#endif
-