# st

Unnamed repository; edit this file 'description' to name the repository.

| Log | Files | Refs | README | LICENSE

    commit d01c55c9ab58588d98239c515aa8db6443ae75ca
    parent b3b7ffce5f1cb1d82aa26df976f0316d89d15d7f
    Author: Aurélien Aptel <aurelien.aptel@gmail.com>
    Date:   Mon, 26 Apr 2010 19:20:53 +0200

    use SHELL environment variable (thx Thomas Adam)

    Diffstat:
    Mconfig.h | 1-
    Mst.c | 10++++++----

    2 files changed, 6 insertions(+), 5 deletions(-)
    diff --git a/config.h b/config.h
    @@ -1,4 +1,3 @@
    -#define SHELL "/bin/bash"
     #define TAB    8

     #define FONT "6x13"
    diff --git a/st.c b/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);