diff options
author | Jilles Tjoelker <jilles@stack.nl> | 2010-09-08 16:17:28 +0800 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2010-09-08 16:17:28 +0800 |
commit | 80bbe35591f67679c2132e97b0e016f33510830e (patch) | |
tree | 7e7e3221bc963da63722cb701f2604dd4880745e | |
parent | [EVAL] Check exit for eval NSUBSHELL (diff) | |
download | dash-80bbe35591f67679c2132e97b0e016f33510830e.tar.gz dash-80bbe35591f67679c2132e97b0e016f33510830e.zip |
[VAR] Fix varinit ordering that broke fc
Git commit 0df96793ef6aa103df228d7dfe56099b7d721a15 "[SHELL] Add preliminary LINENO support" added the LINENO variable in the middle of other initialized variables, causing some macros for TERM and HISTSIZE to break (both of these are only used if libedit support is compiled in, which is not the case by default). The breakage is the same as can be seen by setting HISTSIZE=0. Also add a comment warning about this. Reported-by: Wez Furlong <kingwez@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to '')
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/var.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 0e367a6..684325d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2010-09-08 Jilles Tjoelker <jilles@stack.nl> + + * Fix varinit ordering that broke fc. + 2010-07-06 Gerrit Pape <pape@smarden.org> * Check exit for eval NSUBSHELL. diff --git a/src/var.c b/src/var.c index 3efc943..25c2216 100644 --- a/src/var.c +++ b/src/var.c @@ -78,6 +78,7 @@ const char defifsvar[] = "IFS= \t\n"; const char defifs[] = " \t\n"; #endif +/* Some macros in var.h depend on the order, add new variables to the end. */ struct var varinit[] = { #if ATTY { 0, VSTRFIXED|VTEXTFIXED|VUNSET, "ATTY\0", 0 }, @@ -94,11 +95,11 @@ struct var varinit[] = { { 0, VSTRFIXED|VTEXTFIXED, "PS2=> ", 0 }, { 0, VSTRFIXED|VTEXTFIXED, "PS4=+ ", 0 }, { 0, VSTRFIXED|VTEXTFIXED, "OPTIND=1", getoptsreset }, - { 0, VSTRFIXED|VTEXTFIXED, "LINENO=1", 0 }, #ifndef SMALL { 0, VSTRFIXED|VTEXTFIXED|VUNSET, "TERM\0", 0 }, { 0, VSTRFIXED|VTEXTFIXED|VUNSET, "HISTSIZE\0", sethistsize }, #endif + { 0, VSTRFIXED|VTEXTFIXED, "LINENO=1", 0 }, }; STATIC struct var *vartab[VTABSIZE]; |