<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - getting stuck before eglswapbuffers in app without wl_shell and wl_registry components"
href="https://bugs.freedesktop.org/show_bug.cgi?id=77260#c2">Comment # 2</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - getting stuck before eglswapbuffers in app without wl_shell and wl_registry components"
href="https://bugs.freedesktop.org/show_bug.cgi?id=77260">bug 77260</a>
from <span class="vcard"><a class="email" href="mailto:pulkitnandan@gmail.com" title="Rohit Nandan <pulkitnandan@gmail.com>"> <span class="fn">Rohit Nandan</span></a>
</span></b>
<pre>EGL 1.4, ubuntu 12.04 ,x64. Had no info of shell and registry
On Thu, Apr 10, 2014 at 11:51 AM, <<a href="mailto:bugzilla-daemon@freedesktop.org">bugzilla-daemon@freedesktop.org</a>> wrote:
<span class="quote">> *<a href="show_bug.cgi?id=77260#c1">Comment # 1</a> <<a class="bz_bug_link
bz_status_NEW "
title="NEW --- - getting stuck before eglswapbuffers in app without wl_shell and wl_registry components"
href="show_bug.cgi?id=77260#c1">https://bugs.freedesktop.org/show_bug.cgi?id=77260#c1</a>> on
> <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - getting stuck before eglswapbuffers in app without wl_shell and wl_registry components"
href="show_bug.cgi?id=77260">bug 77260</a> <<a class="bz_bug_link
bz_status_NEW "
title="NEW --- - getting stuck before eglswapbuffers in app without wl_shell and wl_registry components"
href="show_bug.cgi?id=77260">https://bugs.freedesktop.org/show_bug.cgi?id=77260</a>> from Pekka
> Paalanen <<a href="mailto:ppaalanen@gmail.com">ppaalanen@gmail.com</a>> *</span >
>
<span class="quote">> I am puzzled about your question.</span >
>
<span class="quote">> To create an EGLSurface, you will need to create a wl_surface as the first
> step. You cannot do that without creating a wl_registry, binding to
> wl_compositor, and sending a wl_compositor request to create the wl_surface.</span >
>
<span class="quote">> Furthermore, the wl_surface will not be mapped until you tell the server what
> it is. You are creating a top-level window, so you have to use wl_shell or
> xdg_shell to say it is a top-level window. To access wl_shell or xdg_shell, you
> again need wl_registry.</span >
>
<span class="quote">> If you do not tell the server what the wl_surface is for, the surface will
> never be mapped, and hence wl_surface.frame callbacks will never fire. EGL will
> internally wait for the frame callback of the previous eglSwapBuffers, if you
> have swap interval greater than 0. So, without mapping a surface, EGL can
> indeed get stuck, because the frames you render will never get to screen.</span >
>
<span class="quote">> But I still do not understand how you could ever work without wl_registry. Are
> you not telling the whole story, like are you using a toolkit of some kind? Or
> are you trying to do off-screen rendering without a real window?</span >
>
<span class="quote">> What EGL implementation are you using? On what platform?</span >
>
<span class="quote">> What do you mean by blocked, exactly? Have a gdb backtrace?</span >
>
<span class="quote">> ------------------------------
> You are receiving this mail because:</span >
>
<span class="quote">> - You are on the CC list for the bug.
> - You reported the bug.</span >
>
></pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>