1
0
mirror of https://github.com/Tarrasch/zsh-autoenv.git synced 2024-11-25 16:31:00 +02:00

Encapsulate the file name in the hash pair for stricter matching

Ref: https://github.com/Tarrasch/zsh-autoenv/pull/13#issuecomment-65559752
This commit is contained in:
Daniel Hahler 2014-12-04 10:35:09 +01:00
parent 13bb443f48
commit 5655e26d6a
2 changed files with 16 additions and 16 deletions

View File

@ -136,7 +136,7 @@ _autoenv_hash_pair() {
fi fi
env_shasum=$(shasum $env_file | cut -d' ' -f1) env_shasum=$(shasum $env_file | cut -d' ' -f1)
fi fi
echo "$env_file:$env_shasum:1" echo ":${env_file}:${env_shasum}:1"
} }
_autoenv_authorized_env_file() { _autoenv_authorized_env_file() {
@ -147,15 +147,15 @@ _autoenv_authorized_env_file() {
} }
_autoenv_authorize() { _autoenv_authorize() {
local env_file=$1 local env_file=${1:A}
_autoenv_deauthorize $env_file _autoenv_deauthorize $env_file
_autoenv_hash_pair $env_file >> $AUTOENV_ENV_FILENAME _autoenv_hash_pair $env_file >> $AUTOENV_ENV_FILENAME
} }
_autoenv_deauthorize() { _autoenv_deauthorize() {
local env_file=$1 local env_file=${1:A}
if [[ -s $AUTOENV_ENV_FILENAME ]]; then if [[ -s $AUTOENV_ENV_FILENAME ]]; then
echo "$(\grep -vF $env_file $AUTOENV_ENV_FILENAME)" > $AUTOENV_ENV_FILENAME echo "$(\grep -vF :${env_file}: $AUTOENV_ENV_FILENAME)" > $AUTOENV_ENV_FILENAME
fi fi
} }

View File

@ -35,39 +35,39 @@ Now adding some auth pair.
$ echo first > first $ echo first > first
$ _autoenv_authorize first $ _autoenv_authorize first
$ cat $AUTOENV_ENV_FILENAME $ cat $AUTOENV_ENV_FILENAME
/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob)
And a second one. And a second one.
$ echo second > second $ echo second > second
$ _autoenv_authorize second $ _autoenv_authorize second
$ cat $AUTOENV_ENV_FILENAME $ cat $AUTOENV_ENV_FILENAME
/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob)
And a third. And a third.
$ echo third > third $ echo third > third
$ _autoenv_authorize third $ _autoenv_authorize third
$ cat $AUTOENV_ENV_FILENAME $ cat $AUTOENV_ENV_FILENAME
/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/third:ad180453bf8a374a15df3e90a78c180230146a7c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/third:ad180453bf8a374a15df3e90a78c180230146a7c:1 (glob)
Re-add the second one, with the same hash. Re-add the second one, with the same hash.
$ _autoenv_authorize second $ _autoenv_authorize second
$ cat $AUTOENV_ENV_FILENAME $ cat $AUTOENV_ENV_FILENAME
/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/first:271ac93c44ac198d92e706c6d6f1d84aefcfa337:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/third:ad180453bf8a374a15df3e90a78c180230146a7c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/third:ad180453bf8a374a15df3e90a78c180230146a7c:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob)
Re-add the first one, with a new hash. Re-add the first one, with a new hash.
$ echo one more line >> first $ echo one more line >> first
$ _autoenv_authorize first $ _autoenv_authorize first
$ cat $AUTOENV_ENV_FILENAME $ cat $AUTOENV_ENV_FILENAME
/tmp/cramtests-*/_autoenv_utils.t/third:ad180453bf8a374a15df3e90a78c180230146a7c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/third:ad180453bf8a374a15df3e90a78c180230146a7c:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/second:7bee8f3b184e1e141ff76efe369c3b8bfc50e64c:1 (glob)
/tmp/cramtests-*/_autoenv_utils.t/first:65eb010197b73ddc109b7210080f97a87f53451e:1 (glob) :/tmp/cramtests-*/_autoenv_utils.t/first:65eb010197b73ddc109b7210080f97a87f53451e:1 (glob)
}}} }}}