void _UnregisterRenderCallback(Evas_Object* pObject);
int __registerCallbackCount = 0;
_SglInfo* __pPreviousSglInfo = null;
-EGLSurface __pPreviousSurface = EGL_NO_SURFACE;
-EGLSurface __pPreviousContext = EGL_NO_CONTEXT;
#endif
#if !defined (_OSP_EMUL_)
EGLSurface readSurface = _SglGetCurrentSurface(EGL_READ);
EGLSurface eglContext = eglGetCurrentContext();
- if (__pPreviousSurface == drawSurface)
- {
- __pPreviousSurface = EGL_NO_SURFACE;
- }
-
if (drawSurface != EGL_NO_SURFACE && readSurface != EGL_NO_SURFACE)
{
needSglMakeCurrent = true;
__pPreviousSglInfo = null;
#endif
- __pPreviousSurface = EGL_NO_SURFACE;
- __pPreviousContext = EGL_NO_CONTEXT;
return EGL_TRUE;
}
EGLBoolean
_SglDestroySurface(EGLDisplay dpy, EGLSurface surface)
{
- if (__pPreviousSurface == surface)
- {
- __pPreviousSurface = EGL_NO_SURFACE;
- }
-
EGLBoolean ret = EGL_FALSE;
_SglInfoTableManipulator* pSglInfoTableManipulatorInstance = _SglInfoTableManipulator::GetInstance();
EGLBoolean
_SglDestroyContext(EGLDisplay dpy, EGLContext ctx)
{
- if (__pPreviousContext == ctx)
- {
- __pPreviousContext = EGL_NO_CONTEXT;
- }
-
return eglDestroyContext(dpy, ctx);
}
EGLBoolean
_SglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx)
{
- if (__pPreviousSurface == draw && __pPreviousContext == ctx)
- {
- return EGL_TRUE;
- }
- __pPreviousSurface = draw;
- __pPreviousContext = ctx;
-
_SglInfoTableManipulator* pSglInfoTableManipulatorInstance = _SglInfoTableManipulator::GetInstance();
_SglIndex sglIndexDraw = (_SglIndex)draw;