From 80bbe35591f67679c2132e97b0e016f33510830e Mon Sep 17 00:00:00 2001 From: Jilles Tjoelker Date: Wed, 8 Sep 2010 16:17:28 +0800 Subject: [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 Signed-off-by: Herbert Xu --- src/var.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/var.c') 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]; -- cgit 1.4.1