Web lists-archives.com

Re: X: wglMakeCurrent error: 0006 on XUnmapWindow->XMapWindow

On 20/06/2017 14:24, Mick Pearson wrote:
I was asked by the freeglut mailing list to alert the X/Cygwin
team to problems with the WGL context handles becoming invalid

"team"... :hollow laughter:

Thanks for reporting this issue.

A link to the relevant post in the freeglut list archives, e.g. [1] would have been helpful.

[1] https://sourceforge.net/p/freeglut/mailman/message/35903099/

if a window is hidden and then the error in the subject is out
putted when the window is revealed again.

I couldn't quite reproduce this.

Using the Resizer demo,I get this error if I do 'c', then 'h'. In this case the error is being emitted because drawing is taking place to the hidden child window.

I'm not sure if those errors could just be squelched, or something more complex is needed to solve that problem.

Perhaps you could give more detailed reproduction steps?

There are also issues with iconification, where the windows are
in need of repainting when restored. But when unmapped they lose

Yes, there are some issues with how the GL content is drawn (basically it's placed on top of the X windows, rather than being composed into them), which gives rise the contents not being repainted when restored, as briefly noted in [2].

(Incidentally, this also explains how to configure things to use indirect rendering, which seemed to be giving some difficulty in the linked thread)

their WGL context, meaning that OpenGL textures are probably lost
and the context is inoperable, which is a whole other class of
Hmmm, yes. The native windows are created/destroyed when the X windows are mapped/unmapped, for reasons lost in the mists of time.

Can you give an example of this class of problem?

I'd expect this problem to also exist with indirect WGL rendering.

I hope this is a temporary development and not the state of X on
Cygwin. I found Xming to supplement the X server. I spent a couple
afternoons attempting to determine the root of the problem. I
thought perhaps the backing-store fields needed to be set, but it
became clear that most X servers are simply very lenient and most
clients expect them to be, and that there's most likely oversights
in Cygwin/X in the direct rendering mode with WGL.

(Quite possibly, when using Xming, it's operating in software rendering or indirect mode, which might explain why you don't see these problems then)

[2] https://x.cygwin.com/docs/ug/using-glx.html

Jon Turney
Volunteer Cygwin/X X Server maintainer

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple