This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Updated: XFree86-xserv-4.3.0-33


Andrew,

Andrew Braverman wrote:
I had not checked, but I just did.  If I remove the -clipboard and the
sleep, all is well.  As another data point, a longer sleep is needed if the
files are run on windows login (which is not surprising).

Your crash is possibly due to xhost being the first X Client to connect... when it disconnects, the X Server tries to reset. There may be some problems in -clipboard that cause a crash in such a quick server startup followed by a reset. I have tried to fix those problems, but it is going to take me a while to find all of the bugs that have krept into the server reset code. Currently you can't even reset the server more than twice, without -clipboard and without -multiwindow, before it just exits without a warning or error message. So, you are likely to have to work around this problem for a while if it doesn't magically go away in the next release. For now, I would just drop the xhost command from your startup file.


On a different note, I have noticed that the X clipboard will transfer to
windows as long as the data is highlighted.  Once the data is unhighlighted
(i.e. typing "clear") the text is still in the X buffer (middle button or
shift insert pastes correctly), but the windows clipboard is empty.

That is an interesting point that I had thought of, but didn't really want to think hard about :) I spent about 12 hours coding this up... everytime I thought I had it, I realized that more basic changes were needed in the clipboard code. Now I have it working, I believe.


One of the funniest things that I fixed was that we were creating one clipboard thread *per* screen. I realized, in looking at xc/programs/Xserver/dix/dispatch.c, that the selections are global to all screens running on the same display (or instance of XWin.exe). So, we really only needed one clipboard client thread, no matter how many -screen parameters were passed to XWin.exe. I changed the code to create just one clipboard client thread for the entire process... that really simplified the process of changing the code, since I didn't have to track things per-screen anymore.

I have made your request work only for the PRIMARY and CLIPBOARD selections. It won't matter if the X client still has data in the SECONDARY selection, because we do not monitor that selection. So, don't complain if you can still paste in one or two X apps but not in Win32 :)

Harold


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]