rem: execl(shell, shell, "-c", wstrappend("exec ", command), NULL);
add: execl(shell, shell, "-c", command, NULL);
context: ExecuteShellCommand(WScreen *scr, char *command){    static char *shell = NULL;    pid_t pid;    /*     * This have a problem: if the shell is tcsh (not sure about others)     * and ~/.tcshrc have /bin/stty erase ^H somewhere on it, the shell     * will block and the command will not be executed.    if (!shell) {	shell = getenv("SHELL");	if (!shell)	    shell = "/bin/sh";    }     */    shell = "/bin/sh";    pid = fork();    if (pid==0) {	SetupEnvironment(scr);#ifdef HAVE_SETPGID	setpgid(0, 0);#endif	execl(shell, shell, "-c", wstrappend("exec ", command), NULL);	wsyserror("could not execute %s -c %s", shell, command);	Exit(-1);    } else if (pid < 0) {	wsyserror("cannot fork a new process");    }}