diff options
author | Mike Burns <mike@mike-burns.com> | 2014-05-06 14:00:54 +0200 |
---|---|---|
committer | Mike Burns <mike@mike-burns.com> | 2014-05-06 14:00:54 +0200 |
commit | c9d180900a3f8e54b456c9e71bfaac930bbc2478 (patch) | |
tree | 4e768ad20bb68db6a294906e551ba77fd6429b35 | |
parent | 7b7354dfe862c93fd8f496671b3e08c0a3f7f4d9 (diff) |
Bugfix: do not break out of the for loop
A `break` anywhere inside a `for` loop (even inside a `case`) will exit
from the innermost loop. Replace the `break` with a `:` to get the
desired effect.
Spotted by Pat Brisin.
-rwxr-xr-x | bin/mkrc.in | 4 | ||||
-rw-r--r-- | test/mkrc-simple-output.t | 13 |
2 files changed, 15 insertions, 2 deletions
diff --git a/bin/mkrc.in b/bin/mkrc.in index e173eae..e8d3864 100755 --- a/bin/mkrc.in +++ b/bin/mkrc.in @@ -79,8 +79,8 @@ fi for file in $files; do case "$file" in - /*) break;; - *) [ -e "$PWD/$file" ] && file="$PWD/$file" + /*) : ;; + *) [ -e "$PWD/$file" ] && file="$PWD/$file" ;; esac dotless="$(de_dot "$file")" dest="$(destination "$DOTFILES_DIR" "$dotless" $in_host "$tag")" diff --git a/test/mkrc-simple-output.t b/test/mkrc-simple-output.t index c18886c..9db263d 100644 --- a/test/mkrc-simple-output.t +++ b/test/mkrc-simple-output.t @@ -47,9 +47,22 @@ preserving the full path then symlink > cd .nested/deeply $ mkrc -v another_example + > cd ../.. Moving... '*/.nested/deeply/another_example' -> '*/.dotfiles/nested/deeply/another_example' (glob) Linking... '*/.dotfiles/nested/deeply/another_example' -> '*/.nested/deeply/another_example' (glob) $ assert_linked "$HOME/.nested/deeply/another_example" "$HOME/.dotfiles/nested/deeply/another_example" + +Making an absolute rc file + + $ touch .an_example + + $ mkrc -v $PWD/.an_example + Moving... + '*/.an_example' -> '*/.dotfiles/an_example' (glob) + Linking... + '*/.dotfiles/an_example' -> '*/.an_example' (glob) + + $ assert_linked "$HOME/.an_example" "$HOME/.dotfiles/an_example" |