]> asedeno.scripts.mit.edu Git - PuTTY.git/blobdiff - windows/winproxy.c
Fix an always-false if statement which was causing the window border
[PuTTY.git] / windows / winproxy.c
index b1d3f6e7fcc3c6aa0332d1e7f0c5975932428d93..75a785296ac4dba5e294509d33a97799301c7de5 100644 (file)
@@ -87,6 +87,13 @@ static int sk_localproxy_write_oob(Socket s, const char *data, int len)
     return sk_localproxy_write(s, data, len);
 }
 
+static void sk_localproxy_write_eof(Socket s)
+{
+    Local_Proxy_Socket ps = (Local_Proxy_Socket) s;
+
+    handle_write_eof(ps->to_cmd_h);
+}
+
 static void sk_localproxy_flush(Socket s)
 {
     /* Local_Proxy_Socket ps = (Local_Proxy_Socket) s; */
@@ -132,6 +139,7 @@ Socket platform_new_connection(SockAddr addr, char *hostname,
        sk_localproxy_close,
        sk_localproxy_write,
        sk_localproxy_write_oob,
+       sk_localproxy_write_eof,
        sk_localproxy_flush,
        sk_localproxy_set_private_ptr,
        sk_localproxy_get_private_ptr,
@@ -198,6 +206,8 @@ Socket platform_new_connection(SockAddr addr, char *hostname,
     CreateProcess(NULL, cmd, NULL, NULL, TRUE,
                  CREATE_NO_WINDOW | NORMAL_PRIORITY_CLASS,
                  NULL, NULL, &si, &pi);
+    CloseHandle(pi.hProcess);
+    CloseHandle(pi.hThread);
 
     sfree(cmd);