The sys/signal.h is essentially a redirect to signal.h, without further
logic. However when using musl libc, a warning (which is treated as an error)
is also emitted about this:
| /usr/include/sys/signal.h:1:2: error: #warning redirecting incorrect #include <sys/signal.h> to <signal.h> [-Werror=cpp]
| 1 | #warning redirecting incorrect #include <sys/signal.h> to <signal.h>
Remove sys/signal.h header to solve the problem - the signal.h header is already
included in this file.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Commit 80fab03198 introduced a way to
prevent waitforx going to the network when trying to open a display,
and hence potentially blocking.
This method turned out to be invalidated by libxcb version 1.16 and
1.17
This change adds an explicit check that the Unix socket for the display
in /tmp/.X11-unix/Xn is open before trying to connect to display ':n'.
This has the same effect.
1) Changed alarm message from "Timed out waiting for RandR outputs" to
"Timed out waiting for X display". The former was confusing, and the
times where this message was triggered were nothing to do with
RandR
2) Don't try to open a display of the form ":n" or ":n.m" directly
(n,m >= 0). If the X server hasn't yet opened its local socket,
the XOpenDisplay() call can go to the network and possibly block
for a long time. Instead, use the (undocumented) "unix:n" display
specification, whih never goes to the network, and doesn't block.
Without this, the compilation of waitforx can fail on FreeBSD
with this error:-
waitforx.c:1:10: fatal error: 'X11/extensions/Xrandr.h' file not found
This PR makes the use of AM_CPPFLAGS and AM_CFLAGS the same as
that for (e.g.) chansrv which also depends on X includes
For some window managers (fvwm2 and fvwm3) if the X server isn't
running and has output it's possible for the window manager to fail or
reconfigure randr incorrectly.
With xrdp-waitfox:
- Install xrdp-waitfox to the BIN dir.
- sesman will run xrdp-waitfox as the logged in user.
- Set an alarm to exit after 30 seconds.
- Try to open env DISPLAY value's display (10 seconds).
- Test for RandR extension.
- Wait for outputs to appear (10 seconds).