[Webkit-unassigned] [Bug 101291] [EFL] Refactor GraphicsContext3DEFL

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 6 00:56:59 PST 2012


--- Comment #5 from Simon Hausmann <hausmann at webkit.org>  2012-11-06 00:58:29 PST ---
(From update of attachment 172498)
View in context: https://bugs.webkit.org/attachment.cgi?id=172498&action=review

This patch is also missing a ChangeLog.

> Source/WebCore/platform/graphics/efl/GLNativeContext.cpp:73
> +// Because of driver bugs, exiting the program when there are active pbuffers
> +// can crash the X server (this has been observed with the official Nvidia drivers).
> +// We need to ensure that we clean everything up on exit. There are several reasons
> +// that GraphicsContext3Ds will still be alive at exit, including user error (memory
> +// leaks) and the page cache. In any case, we don't want the X server to crash.

This part doesn't make much sense to me. atexit() in libraries is a very dangerous thing to use, especially given that you don't know in which order your handlers are called. (what if the nvidia driver also installs atexit() handlers?)

Besides, the process can crash at any time and then it would bring down the x server, too -> I don't think we should try to work around bugs in the X server.

(JMHO, feel free to ignore)

> Source/WebCore/platform/graphics/efl/GLXContextWrapper.cpp:54
> +PlatformNativeContext GLXContextWrapper::currentNativeContext()
> +{
> +#if USE(EGL)
> +    return eglGetCurrentContext();
> +#else
> +    return glXGetCurrentContext();
> +#endif
> +}

It seems wrong to me to mix EGL and GLX code in a file/class that has GLX in its name. They are different APIs (serving similar purposes, but they are not the same)

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list