summary refs log tree commit diff
path: root/src/funcs/dirs
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2010-07-06 17:40:53 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2010-07-06 17:40:53 +0800
commitcb20b2cd727c892756ff3f144ebf92feb5590562 (patch)
treea8d571fa9bb0867d055d32747d4d2f7656e8e48b /src/funcs/dirs
parent[EVAL] Don't clear eflag in evalbackcmd (diff)
downloaddash-cb20b2cd727c892756ff3f144ebf92feb5590562.tar.gz
dash-cb20b2cd727c892756ff3f144ebf92feb5590562.zip
[VAR] Fix loss of variables when hash collides
Brian Koropoff reported that the new var patches broke the following
script:

#!/bin/dash
GDM_LANG="bar"
OPTION="foo"
unset GDM_LANG
# OPTION has mysteriously become unset
echo "$OPTION"

He correctly diagnosed this as a result of removing all variables
in the hash chain preceding the one that should be removed in
setvareq.

He also provided a patch to fix this.

This patch is based on his but without keeping the original vpp.
As a result, we now store new variables at the end of the hash
chain instead of the beginning.

To make this work, setvareq/setvar now returns the vp pointer
modified.  In case they're used to unset a variable the pointer
returned is undefined.  This is because mklocal needs it and
used to get it by assuming that the new variable always appear
at the beginning of the chain.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions
>2021-09-22Remove PSF fontsJune McEnroe 2021-09-22Remove Linux-specific utilitiesJune McEnroe 2021-09-22Call sandbox in CGI modeJune McEnroe 2021-09-22Support HTTP PUT in upJune McEnroe 2021-09-22Remove default faviconJune McEnroe 2021-09-21Use Z_FILTERED strategyJune McEnroe 2021-09-21Recalculate various lengths only as neededJune McEnroe 2021-09-21Rewrite pngo, add explicit optionsJune McEnroe 2021-09-16Fix /* **/ comment matchingJune McEnroe 2021-09-15Remove typer, add downgrade to READMEJune McEnroe 2021-09-15Set bot mode on downgradeJune McEnroe 2021-09-15Enter capsicum in downgradeJune McEnroe 2021-09-15Factor out common parts of downgrade messagesJune McEnroe 2021-09-14Add downgrade IRC botJune McEnroe 2021-09-14Sort by title if authors matchJune McEnroe 2021-09-13Swap-remove tags as they're foundJune McEnroe 2021-09-12Replace htagml regex with strncmpJune McEnroe 2021-09-11Also defer printing comment for lone close-parensJune McEnroe 2021-09-10Publish "git-comment"June McEnroe 2021-09-10Add git comment --pretty optionJune McEnroe 2021-09-08Defer printing comment if line is blank or closing braceJune McEnroe 2021-09-08Up default min-repeat to 30 linesJune McEnroe 2021-09-08Handle dirty lines in git-commentJune McEnroe 2021-09-08Document and install git-commentJune McEnroe 2021-09-08Add repeat and all options to git-commentJune McEnroe 2021-09-08Add group threshold to git-commentJune McEnroe