Github user necouchman commented on a diff in the pull request:

    
https://github.com/apache/incubator-guacamole-server/pull/118#discussion_r145842031
  
    --- Diff: src/protocols/ssh/client.c ---
    @@ -70,8 +70,14 @@ int guac_ssh_client_free_handler(guac_client* client) {
     
         /* Free terminal (which may still be using term_channel) */
         if (ssh_client->term != NULL) {
    -        guac_terminal_free(ssh_client->term);
    +        /* Close user input pipe to stop reading in ssh_input_thread */
    +        close(ssh_client->term->stdin_pipe_fd[1]);
    +        close(ssh_client->term->stdin_pipe_fd[0]);
    +        ssh_client->term->stdin_pipe_fd[1] = -1;
    +        ssh_client->term->stdin_pipe_fd[0] = -1;
    +
    --- End diff --
    
    So, you're saying that, even with the changes to the `guac_terminal_free()` 
function, a call to that function, here, would result in the deadlock?
    
    @ceharris @mike-jumper Thoughts on this one?


---

Reply via email to