From 27836d0908617449c8f7fc48e045922e17b8c671 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Thu, 5 Aug 2010 15:27:01 +0200 Subject: [PATCH] cache the checksums of the files --- misc/tools/cached-converter.sh | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/misc/tools/cached-converter.sh b/misc/tools/cached-converter.sh index c500136f..99800c53 100755 --- a/misc/tools/cached-converter.sh +++ b/misc/tools/cached-converter.sh @@ -26,6 +26,8 @@ tmpdir=`mktemp -d -t cached-converter.XXXXXX` trap 'exit 1' INT trap 'rm -rf "$tmpdir"' EXIT +lastinfiles= +lastinfileshash= cached() { flag=$1; shift @@ -41,9 +43,14 @@ cached() keep=true fi options=`echo "$*" | git hash-object --stdin` - sum=`git hash-object "$infile1"` - if [ -n "$infile2" ]; then - sum=$sum`git hash-object "$infile2"` + if [ x"$infile1/../$infile2" = x"$lastinfiles" ]; then + sum=$lastinfileshash + else + sum=`git hash-object "$infile1"` + if [ -n "$infile2" ]; then + sum=$sum`git hash-object "$infile2"` + fi + lastinfileshash=$sum fi mkdir -p "$CACHEDIR/$method-$options" name1="$CACHEDIR/$method-$options/$sum-1.${outfile1##*.}" -- 2.39.2