Diff

Differences From Artifact [e17ee8f7dc]:

To Artifact [ce2a2f8e82]:


822
823
824
825
826
827
828
829
830
831
832
833





834
835
836

837
838
839
840
841
842
843
822
823
824
825
826
827
828





829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844







-
-
-
-
-
+
+
+
+
+



+







		 * there we go. Memory usage will be rationalised
		 * as soon as we exec anyway.
		 */
	    }
	}

	/*
	 * SIGINT and SIGQUIT may have been set to ignored by our
	 * parent, particularly by things like sh -c 'pterm &' and
	 * some window managers. SIGCHLD, meanwhile, was blocked
	 * during pt_main() startup. Reverse all this for our child
	 * process.
	 * SIGINT, SIGQUIT and SIGPIPE may have been set to ignored by
	 * our parent, particularly by things like sh -c 'pterm &' and
	 * some window or session managers. SIGCHLD, meanwhile, was
	 * blocked during pt_main() startup. Reverse all this for our
	 * child process.
	 */
	putty_signal(SIGINT, SIG_DFL);
	putty_signal(SIGQUIT, SIG_DFL);
	putty_signal(SIGPIPE, SIG_DFL);
	block_signal(SIGCHLD, 0);
	if (pty_argv)
	    execvp(pty_argv[0], pty_argv);
	else {
	    char *shell = getenv("SHELL");
	    char *shellname;
	    if (cfg->login_shell) {