Report errors when eglCreateImageKHR fails

Change-Id: Ica39b72ac2505675e619ef4994bd67b98bf6e7da
This commit is contained in:
Mathias Agopian 2011-04-26 14:57:40 -07:00
parent 77680e9273
commit 3cd5a11708
1 changed files with 8 additions and 7 deletions

View File

@ -274,10 +274,14 @@ status_t SurfaceTexture::updateTexImage() {
EGLImageKHR image = mSlots[mLastQueued].mEglImage;
if (image == EGL_NO_IMAGE_KHR) {
EGLDisplay dpy = eglGetCurrentDisplay();
sp<GraphicBuffer> graphicBuffer = mSlots[mLastQueued].mGraphicBuffer;
image = createImage(dpy, graphicBuffer);
image = createImage(dpy, mSlots[mLastQueued].mGraphicBuffer);
mSlots[mLastQueued].mEglImage = image;
mSlots[mLastQueued].mEglDisplay = dpy;
if (image == EGL_NO_IMAGE_KHR) {
// NOTE: if dpy was invalid, createImage() is guaranteed to
// fail. so we'd end up here.
return -EINVAL;
}
}
GLint error;
@ -483,12 +487,9 @@ EGLImageKHR SurfaceTexture::createImage(EGLDisplay dpy,
};
EGLImageKHR image = eglCreateImageKHR(dpy, EGL_NO_CONTEXT,
EGL_NATIVE_BUFFER_ANDROID, cbuf, attrs);
EGLint error = eglGetError();
if (error != EGL_SUCCESS) {
if (image == EGL_NO_IMAGE_KHR) {
EGLint error = eglGetError();
LOGE("error creating EGLImage: %#x", error);
} else if (image == EGL_NO_IMAGE_KHR) {
LOGE("no error reported, but no image was returned by "
"eglCreateImageKHR");
}
return image;
}