use SHELL environment variable (thx Thomas Adam)
Aurélien Aptel aurelien.aptel@gmail.com
M
st.c
→
st.c
@@ -208,9 +208,12 @@ }
void execsh(void) { - char *args[3] = {SHELL, "-i", NULL}; + char *shell = getenv("SHELL"); + if(!shell) + shell = "/bin/sh"; + char *args[3] = {shell, "-i", NULL}; putenv("TERM=" TNAME); - execvp(SHELL, args); + execvp(shell, args); } void@@ -844,7 +847,6 @@ }
void tputc(char c) { - /* dump(c); */ if(term.esc & ESC_START) { if(term.esc & ESC_CSI) { escseq.buf[escseq.len++] = c;@@ -1277,7 +1279,7 @@ die("select failed: %s\n", SERRNO);
} if(FD_ISSET(cmdfd, &rfd)) { ttyread(); - draw(SCREEN_UPDATE); + draw(SCREEN_UPDATE); } while(XPending(xw.dis)) { XNextEvent(xw.dis, &ev);