1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00
putty-source/unix
Ben Harris 09095a7d92 Avoid treating non-X GDK display names as X ones
When running on Wayland, gdk_display_get_name() can return things like
"wayland-0" rather than valid X display names.  PuTTY nonetheless
treated them as X display names, meaning that when running under
Wayland, pterm would set DISPLAY to "wayland-0" in subprocesses, and
PuTTY's X forwarding wouldn't work properly.

To fix this, places that call gdk_display_get_name() now only do so on
displays for which GDK_IS_X_DISPLAY() is true.  As with
GDK_IS_X_WINDOW(), this requires some backward-compatibility for GDK
versions where everything is implicitly running on X.

To make this work usefully, pterm now also won't unset DISPLAY if it
can't get an X display name and instead will pass through whatever value
of DISPLAY it received.  I think that's better behaviour anyway.

There are two separate parts of PuTTY that call gdk_display_get_name().
platform_get_x_display() in unix/putty.c is used for X forwarding, while
gtk_seat_get_x_display() in unix/window.c is used used for setting DISPLAY
and recording in utmp.  I've updated both of them.
2024-12-15 00:07:21 +00:00
..
stubs Add lots more stub versions of standard code modules. 2023-05-29 15:54:34 +01:00
utils Add and use cmdline_arg_to_filename(). 2024-09-26 11:30:07 +01:00
agent-client.c Formatting: realign labels and case/default statements. 2022-08-03 20:48:46 +01:00
agent-socket.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
askpass.c Rewrite some manual char-buffer-handling code. 2022-09-14 16:10:29 +01:00
cliloop.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
CMakeLists.txt New abstraction for command-line arguments. 2024-09-26 11:30:07 +01:00
columns.c GTK: fix y computation in align_next_to. 2022-09-06 11:39:01 +01:00
columns.h Improve the align_next_to mechanism. 2022-05-05 19:04:34 +01:00
config-gtk.c Replace integer context2 encoding in conf_editbox_handler. 2022-09-01 20:43:23 +01:00
config-unix.c Restructure dlgcontrol as a struct with an anon union. 2022-05-01 10:00:32 +01:00
console.c Merge tag '0.80'. 2023-12-18 14:47:48 +00:00
dialog.c Windows: rewrite request_file() to support Unicode. 2024-12-13 19:38:48 +00:00
fd-socket.c Centralise stub plug/socket functions. 2024-06-29 12:19:35 +01:00
gss.c Unix static GSSAPI: fix an uninitialised structure field. 2022-09-17 07:55:05 +01:00
gtk-common.c Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00
gtkcompat.h Avoid treating non-X GDK display names as X ones 2024-12-15 00:07:21 +00:00
gtkmisc.h Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
keygen-noise.c Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00
local-proxy.c New facility, platform_start_subprocess. 2022-09-01 20:43:23 +01:00
main-gtk-application.c Fix build failure on Debian bullseye from last commit. 2024-09-08 19:05:45 +01:00
main-gtk-simple.c Unix PuTTY/pterm: remove a premature cmdline_arg_list_free. 2024-11-25 19:47:36 +00:00
network.c Fix build failures with NO_IPV6 defined. 2024-11-28 18:28:43 +00:00
no-gtk.c Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00
noaskpass.c Better header comment for noaskpass.c. 2022-05-20 19:35:59 +01:00
noise.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
osxlaunch.c osxlaunch: stop setting DYLD_LIBRARY_PATH. 2017-12-20 10:04:02 +00:00
pageant.c Unix Pageant: fix usage message about --encrypted. 2024-11-17 14:30:08 +00:00
peerinfo.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
platform.h Windows: rewrite request_file() to support Unicode. 2024-12-13 19:38:48 +00:00
plink.c Switch CONF_remote_cmd to being STR_AMBI. 2024-09-26 11:30:07 +01:00
printing.c Rename 'ret' variables passed from allocation to return. 2022-09-14 16:10:29 +01:00
procnet.c Generalise strbuf_catf() into put_fmt(). 2021-11-19 11:32:47 +00:00
psocks.c New abstraction for command-line arguments. 2024-09-26 11:30:07 +01:00
psusan.c Pass the calling Socket to plug_log. 2024-06-29 12:00:12 +01:00
pterm-config-xpm.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
pterm-xpm.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
pterm.bundle OS X makefile: stop depending on JHBUILD_PREFIX. 2017-11-26 11:45:48 +00:00
pterm.c Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00
pterm.plist Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
pty.c Avoid treating non-X GDK display names as X ones 2024-12-15 00:07:21 +00:00
putty-config-xpm.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
putty-xpm.c Rename most of the platform source files. 2021-04-26 18:00:01 +01:00
putty.bundle OS X makefile: stop depending on JHBUILD_PREFIX. 2017-11-26 11:45:48 +00:00
putty.c Avoid treating non-X GDK display names as X ones 2024-12-15 00:07:21 +00:00
putty.plist Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
serial.c Add memsets after allocation of all Backend implementors. 2021-10-30 17:28:28 +01:00
sftp.c New abstraction for command-line arguments. 2024-09-26 11:30:07 +01:00
sftpserver.c Fix build failure on systems without fstatat. 2023-04-19 14:28:36 +01:00
sharing.c Pass an Interactor to new_connection(). 2021-10-30 18:19:56 +01:00
storage.c Rewrite some manual char-buffer-handling code. 2022-09-14 16:10:29 +01:00
unicode.c Rework Unicode conversion APIs to use a BinarySink. 2024-09-26 11:30:07 +01:00
unifont.c Rework Unicode conversion APIs to use a BinarySink. 2024-09-26 11:30:07 +01:00
unifont.h Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00
uppity.c Pass the calling Socket to plug_log. 2024-06-29 12:00:12 +01:00
uxsel.c Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00
window.c Avoid treating non-X GDK display names as X ones 2024-12-15 00:07:21 +00:00
x11.c Make x11_get_auth_from_authfile take a Filename. 2023-05-29 15:41:50 +01:00
x11misc.h Update source file names in comments and docs. 2022-01-22 15:51:31 +00:00