Browse Source

use SHELL environment variable (thx Thomas Adam)

Aurélien Aptel 15 years ago
parent
commit
d01c55c9ab
2 changed files with 6 additions and 5 deletions
  1. 0 1
      config.h
  2. 6 4
      st.c

+ 0 - 1
config.h

@@ -1,4 +1,3 @@
-#define SHELL "/bin/bash"
 #define TAB    8
 
 #define FONT "6x13"

+ 6 - 4
st.c

@@ -208,9 +208,12 @@ die(const char *errstr, ...) {
 
 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 @@ tputtab(void) {
 
 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 @@ run(void) {
 		}
 		if(FD_ISSET(cmdfd, &rfd)) {
 			ttyread();
-			draw(SCREEN_UPDATE);
+			draw(SCREEN_UPDATE); 
 		}
 		while(XPending(xw.dis)) {
 			XNextEvent(xw.dis, &ev);