diff options
author | Jari Aalto <jari.aalto@cante.net> | 2008-11-18 13:15:12 +0000 |
---|---|---|
committer | Jari Aalto <jari.aalto@cante.net> | 2009-09-12 16:46:59 +0000 |
commit | f1be666c7d78939ad775078d290bec2758fa29a2 (patch) | |
tree | 4f4b8ed6eb250653e0bb44685eb5ffa9d3805e91 /arrayfunc.c | |
parent | 0628567a28f3510f506ae46cb9b24b73a6d2dc5d (diff) | |
download | android_external_bash-f1be666c7d78939ad775078d290bec2758fa29a2.tar.gz android_external_bash-f1be666c7d78939ad775078d290bec2758fa29a2.tar.bz2 android_external_bash-f1be666c7d78939ad775078d290bec2758fa29a2.zip |
Imported from ../bash-3.2.48.tar.gz.
Diffstat (limited to 'arrayfunc.c')
-rw-r--r-- | arrayfunc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arrayfunc.c b/arrayfunc.c index 48a099d..6bc248a 100644 --- a/arrayfunc.c +++ b/arrayfunc.c @@ -618,6 +618,8 @@ array_expand_index (s, len) if (expok == 0) { last_command_exit_value = EXECUTION_FAILURE; + + top_level_cleanup (); jump_to_top_level (DISCARD); } return val; @@ -720,7 +722,7 @@ array_value_internal (s, quoted, allow_all, rtype) if (ALL_ELEMENT_SUB (t[0]) && t[1] == ']') { if (rtype) - *rtype = 1; + *rtype = (t[0] == '*') ? 1 : 2; if (allow_all == 0) { err_badarraysub (s); |