X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/421d68352da46872c590a48e0ce601946813995a..aa431b46a18a94a0c8695f07ef7f5c63da887a95:/x11fwd.c diff --git a/x11fwd.c b/x11fwd.c index d632e553..4b043fa4 100644 --- a/x11fwd.c +++ b/x11fwd.c @@ -189,8 +189,16 @@ char *x11_init(Socket * s, char *display, void *c, void *auth) displaynum = 0; /* sensible default */ if (n > sizeof(host) - 1) n = sizeof(host) - 1; - strncpy(host, display, n); - host[n] = '\0'; + if (n > 0) { + strncpy(host, display, n); + host[n] = '\0'; + } else { + /* + * Local display numbers, particularly on Unix, often omit + * the display part completely. + */ + strcpy(host, "localhost"); + } /* * Try to find host.