<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_ASSIGNED "
   title="ASSIGNED - NV30: Xfwm4 use_compositing - garbled display"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=90871#c40">Comment # 40</a>
              on <a class="bz_bug_link 
          bz_status_ASSIGNED "
   title="ASSIGNED - NV30: Xfwm4 use_compositing - garbled display"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=90871">bug 90871</a>
              from <span class="vcard"><a class="email" href="mailto:jwrdegoede@fedoraproject.org" title="Hans de Goede <jwrdegoede@fedoraproject.org>"> <span class="fn">Hans de Goede</span></a>
</span></b>
        <pre>Hi All,

(In reply to Olivier Fourdan from <a href="show_bug.cgi?id=90871#c11">comment #11</a>)
<span class="quote">> Created <span class=""><a href="attachment.cgi?id=116536" name="attach_116536" title="test program">attachment 116536</a> <a href="attachment.cgi?id=116536&action=edit" title="test program">[details]</a></span>
> test program</span >

So after some time away from this bug, I'm back onto it. The problem is that
the test program ends up using
GL_TEXTURE_2D type textures / GLX_TEXTURE_2D_EXT target, where it should be
using GL_TEXTURE_RECTANGLE_ARB.

The root cause for this seems to be that epoxy_has_glx_extension (dpy, screen,
"GL_ARB_texture_rectangle") always returns false, even though the extension is
there, as confirmed with both glxinfo and glxgears-info.

Now the extension in question is not a glx-extension, but a gl-extension, so
I've also tried calling:
epoxy_has_gl_extension ("GL_ARB_texture_rectangle") but that always returns
false too.

Simply forcing has_texture_rectangle = true to work around this (epoxy?) bug
actually results in the test program not working anywhere at all (tried both on
newer nvidia cards with nouveau and on intel gfx), not sure why. Can you
provide a version of the test program where setting has_texture_rectangle =
true actually works, or does this work for you ?

As for the fallback to GL_TEXTURE_2D / GLX_TEXTURE_2D_EXT not working on nv3x,
this is something which could likely be made to work, but that is quite a bit
of work and will be slow. I believe it would be better to first try to get
GL_TEXTURE_RECTANGLE_ARB to work, and then see if we still need to get
GL_TEXTURE_2D to work at all.

Also in the GL_TEXTURE_2D fallback path you should probably check for npot
support for 2d textures (rect textures always support npot) and if that is not
available refuse to do compositing at all.

Regards,

Hans</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>