Signed-off-by: Jonathan Frazier <[email protected]>
---
 contrib/pacdiff.sh.in | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/contrib/pacdiff.sh.in b/contrib/pacdiff.sh.in
index 47779d6..5ce6140 100644
--- a/contrib/pacdiff.sh.in
+++ b/contrib/pacdiff.sh.in
@@ -25,6 +25,7 @@ diffprog=${DIFFPROG:-vimdiff}
 diffsearchpath=${DIFFSEARCHPATH:-/etc}
 locate=0
 USE_COLOR='y'
+declare -a oldsaves
 
 m4_include(../scripts/library/output_format.sh)
 
@@ -47,9 +48,9 @@ version() {
 
 cmd() {
        if [ $locate -eq 1 ]; then
-               locate -0 -e -b \*.pacnew \*.pacorig \*.pacsave
+               locate -0 -e -b \*.pacnew \*.pacorig \*.pacsave 
'*.pacsave.[0-9]*'
        else
-               find $diffsearchpath \( -name \*.pacnew -o -name \*.pacorig -o 
-name \*.pacsave \) -print0
+               find $diffsearchpath \( -name \*.pacnew -o -name \*.pacorig -o 
-name \*.pacsave -o -name '*.pacsave.[0-9]*' \) -print0
        fi
 }
 
@@ -71,6 +72,12 @@ while IFS= read -u 3 -r -d '' pacfile; do
        file="${pacfile%.pac*}"
        file_type="pac${pacfile##*.pac}"
 
+       # add matches for pacsave.N to oldsaves array, do not prompt
+       if [[ $file_type = pacsave.+([0-9]) ]]; then
+               oldsaves+=("$pacfile")
+               continue
+       fi
+
        msg "%s file found for %s" "$file_type" "$file"
        if [ ! -f "$file" ]; then
                warning "$file does not exist"
@@ -97,6 +104,8 @@ while IFS= read -u 3 -r -d '' pacfile; do
        fi
 done 3< <(cmd)
 
+(( ${#oldsaves[@]} )) && warning "Ignoring %s" "${oldsaves[@]}"
+
 exit 0
 
 # vim: set ts=2 sw=2 noet:
-- 
1.8.3.2


Reply via email to