password-store

Simple password manager using gpg and ordinary unix directories
git clone https://git.zx2c4.com/password-store
Log | Files | Refs | README | LICENSE

commit 834f95887f84be85b5899f00e311ba7e844bb6dc
parent 30aa707312e8d4b8523d6483ecc137c9252ae1d8
Author: Jason A. Donenfeld <Jason@zx2c4.com>
Date:   Sun, 20 Apr 2014 20:07:22 +0200

Don't use subshells for reading from find.

Diffstat:
Msrc/password-store.sh | 8++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/password-store.sh b/src/password-store.sh @@ -92,7 +92,7 @@ reencrypt_path() { local prev_gpg_recipients local gpg_keys local current_keys - find "$1" -iname '*.gpg' | while read -r passfile; do + while read -r -d "" passfile; do passfile_dir="${passfile%/*}" passfile_dir="${passfile_dir#$PREFIX}" passfile_dir="${passfile_dir#/}" @@ -112,7 +112,7 @@ reencrypt_path() { fi prev_gpg_recipients="${GPG_RECIPIENTS[@]}" - done + done < <(find "$PREFIX" -iname '*.gpg' -print0) } check_sneaky_paths() { for path in "$@"; do @@ -372,7 +372,7 @@ cmd_grep() { local passfile_dir local grepresults local search="$1" - find "$PREFIX" -iname '*.gpg' | while read -r passfile; do + while read -r -d "" passfile; do grepresults="$($GPG -d $GPG_OPTS "$passfile" | grep --color=always "$search")" [ $? -ne 0 ] && continue passfile="${passfile%.gpg}" @@ -381,7 +381,7 @@ cmd_grep() { passfile="${passfile##*/}" printf "\e[94m$passfile_dir/\e[1m$passfile\e[0m:\n" echo "$grepresults" - done + done < <(find "$PREFIX" -iname '*.gpg' -print0) } cmd_insert() {