Web lists-archives.com

Re: Patch request to qt 5.9.4 (Re: [ANNOUNCEMENT] Qt 5.9.4)




> From: Achim Gratz

> To: cygwin
> Cc: 
> Date: 2019/3/6, Wed 04:24
> Subject: Re: Patch request to qt 5.9.4 (Re: [ANNOUNCEMENT] Qt 5.9.4)
> 
>T atsuro MATSUOKA writes:
>>  I contacted with Enrico who tells me the patch that I have shown.
> 
> Yes, but that monkeys around the real problem.  What Yaakov is telling
> you is that there are two options and we don't know yet which one we
> have to deal with.
> 
> If O_NONBLOCK is needed, but does not work correctly under Cygwin, then
> that's a bug in Cygwin.  For this case, Corinna asks you to create an
> STC that demonstrates the bug so it can be triaged without having to
> work with something as complex as the Qt terminal in Cygwin.
> 
> If on the other hand O_NONBLOCK is in fact not needed and just shows
> different behaviour on different systems without a bug in the
> implementation being present, then upstream should remove that argument.
> 
> 
> Regards,
> Achim.

Here I desribe another discussion on Bug tracker on gnuplot
https://sourceforge.net/p/gnuplot/bugs/2147/



My summary from searching through the history shown in the links above:
	* gnuplot calls QLocalSocket::connectToServer("name")
	* Qt tries to open a named pipe for the socket using O_NONBLOCK
	* This fails because Cygwin has problems with non-blocking named 
pipes. Back in 2010 Enrico Forestieri posted some simple examples of 
this (standalone tests, no involvement of gnuplot code) but this 
apparently did not lead to a fix. 
	* the Qt patch at the head of this bug report would make gnuplot work, but needs to be wrapped in a conditional test for CYGWIN. I can 
understand why upstream Qt would not want to deal with this. 
Conclusion:  We probably can't fix it in the gnuplot code.  There is a trivial work-around that requires modifying the Qt source code, but 
this would only make sense for the purpose of making a Qt package 
specifically for Cygwin. 

Tatsuro


--
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