This is the mail archive of the cygwin-xfree 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]

[PATCH 0/2] Patches to improve some edge cases in internal client connections


Here's a couple of patches provoked by a problem report on IRC the last week,
where a user had some kind of firewall problem which prevented the X server
from accepting connections from it's internal clients (which use a hard-coded
DISPLAY of 127.0.0.1:0.0 at the moment), which in -multwindow mode, results
in windows with no frame or decoration (as the window styling is done by the
internal WM thread) and no explanation.

However, I'm not terribly happy with either of them, so more polish needed.
Problems:

[01/02]
libxtrans provides a TransNoListen method to set the 'don't listen' flag for a
particular transport, but there is no interface to query the state of that flag,
so I had to resort to grovelling around in the server's list of listeners

[02/02]
Calling FatalError from an internal client thread is a no-no, so these failures
are silent at the moment (in the sense that no pop-up occurs to tell the user
that we are terminating or why).

Also, I'm just noticing I should be using pthread_kill() to ensure the signal
is delivered to the thread which is running the main dispatch loop so that will
exit the select() it may be blocked in and notice that DE_TERMINATE is set.



Jon TURNEY (2):
  Cygwin/X: Improve choice of display name used by internal clients
  Cygwin/X: Cause the X server to terminate if clipboard or WM internal
    client threads exit due to an error

 hw/xwin/Makefile.am          |    1 +
 hw/xwin/win.h                |    7 +++++
 hw/xwin/winclipboardthread.c |   22 +++++++++++++---
 hw/xwin/windisplay.c         |   55 ++++++++++++++++++++++++++++++++++++++++++
 hw/xwin/winmultiwindowwm.c   |   32 +++++++++++++++++-------
 hw/xwin/winprefs.c           |   11 ++------
 include/os.h                 |    2 +
 os/connection.c              |   17 +++++++++++++
 8 files changed, 126 insertions(+), 21 deletions(-)
 create mode 100644 hw/xwin/windisplay.c


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


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