diff options
author | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2015-02-05 09:53:05 -0500 |
---|---|---|
committer | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2015-02-05 09:53:05 -0500 |
commit | 1736b4db53dc60f1e7a9659dc201e0562d43aa02 (patch) | |
tree | 7cd5cddbf07c619a619a96f00b73a466996c67fb | |
parent | 1e4b9e300f6bfb84e3187ba2085723d44af9c50f (diff) | |
download | egawk-1736b4db53dc60f1e7a9659dc201e0562d43aa02.tar.gz egawk-1736b4db53dc60f1e7a9659dc201e0562d43aa02.tar.bz2 egawk-1736b4db53dc60f1e7a9659dc201e0562d43aa02.zip |
Setting -v IGNORECASE=0 on the command line should now work properly.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | eval.c | 6 |
2 files changed, 10 insertions, 3 deletions
@@ -1,3 +1,10 @@ +2015-02-05 Andrew J. Schorr <aschorr@telemetry-investments.com> + + * eval.c (set_IGNORECASE): If IGNORECASE has a numeric value, try + using that before treating it as a string. This fixes a problem + where setting -v IGNORECASE=0 on the command line was not working + properly. + 2015-02-01 Arnold D. Robbins <arnold@skeeve.com> Move POSIX requirement for disallowing paramater names with the @@ -707,6 +707,8 @@ set_IGNORECASE() load_casetable(); if (do_traditional) IGNORECASE = false; + else if ((n->flags & (NUMCUR|NUMBER)) != 0) + IGNORECASE = ! iszero(n); else if ((n->flags & (STRING|STRCUR)) != 0) { if ((n->flags & MAYBE_NUM) == 0) { (void) force_string(n); @@ -715,9 +717,7 @@ set_IGNORECASE() (void) force_number(n); IGNORECASE = ! iszero(n); } - } else if ((n->flags & (NUMCUR|NUMBER)) != 0) - IGNORECASE = ! iszero(n); - else + } else IGNORECASE = false; /* shouldn't happen */ set_RS(); /* set_RS() calls set_FS() if need be, for us */ |