On Tue, Feb 18, 2014 at 12:21 AM, Juha-Pekka Heikkila <juhapekka.heikk...@gmail.com> wrote: > _eglInitResource() was used to memset entire _EGLSync by > writing more than size of pointed target. This does work > as long as Resource is the first element in _EGLSync, > this patch fixes such dependency. _EGLSync is a subclass of _EGLResource so the dependency always holds. _eglInitResource is made to be able to initialize any class derived from _EGLResource, by requiring the size of the derived class to be specified.
> > Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikk...@gmail.com> > --- > src/egl/main/eglsync.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/src/egl/main/eglsync.c b/src/egl/main/eglsync.c > index 9d0067c..ba8a32f 100644 > --- a/src/egl/main/eglsync.c > +++ b/src/egl/main/eglsync.c > @@ -75,7 +75,8 @@ _eglInitSync(_EGLSync *sync, _EGLDisplay *dpy, EGLenum type, > !(type == EGL_SYNC_FENCE_KHR && dpy->Extensions.KHR_fence_sync)) > return _eglError(EGL_BAD_ATTRIBUTE, "eglCreateSyncKHR"); > > - _eglInitResource(&sync->Resource, sizeof(*sync), dpy); > + memset(sync, 0, sizeof(_EGLSync)); > + _eglInitResource(&sync->Resource, sizeof(_EGLResource), dpy); > sync->Type = type; > sync->SyncStatus = EGL_UNSIGNALED_KHR; > sync->SyncCondition = EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR; > -- > 1.8.1.2 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev -- o...@lunarg.com _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev