diff --git a/git-count-objects.sh b/git-count-objects.sh
index 74ee4f371f749cb5ae9fdb7e789d341f60997e62..40c58efe0884a2431146bdd3dd12910033e5f182 100755 (executable)
--- a/git-count-objects.sh
+++ b/git-count-objects.sh
#!/bin/sh
+#
+# Copyright (c) 2005 Junio C Hamano
+#
-. git-sh-setup
+GIT_DIR=`git-rev-parse --git-dir` || exit $?
-echo $(find "$GIT_DIR/objects"/?? -type f -print | wc -l) objects, \
+dc </dev/null 2>/dev/null || {
+ # This is not a real DC at all -- it just knows how
+ # this script feeds DC and does the computation itself.
+ dc () {
+ while read a b
+ do
+ case $a,$b in
+ 0,) acc=0 ;;
+ *,+) acc=$(($acc + $a)) ;;
+ p,) echo "$acc" ;;
+ esac
+ done
+ }
+}
+
+echo $(find "$GIT_DIR/objects"/?? -type f -print 2>/dev/null | wc -l) objects, \
$({
echo 0
# "no-such" is to help Darwin folks by not using xargs -r.