about summary refs log tree commit diff
path: root/third_party/git/t/valgrind/analyze.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/t/valgrind/analyze.sh')
-rwxr-xr-xthird_party/git/t/valgrind/analyze.sh127
1 files changed, 0 insertions, 127 deletions
diff --git a/third_party/git/t/valgrind/analyze.sh b/third_party/git/t/valgrind/analyze.sh
deleted file mode 100755
index 2ffc80f72105..000000000000
--- a/third_party/git/t/valgrind/analyze.sh
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/bin/sh
-
-# Get TEST_OUTPUT_DIRECTORY from GIT-BUILD-OPTIONS if it's there...
-. "$(dirname "$0")/../../GIT-BUILD-OPTIONS"
-# ... otherwise set it to the default value.
-: ${TEST_OUTPUT_DIRECTORY=$(dirname "$0")/..}
-
-output=
-count=0
-total_count=0
-missing_message=
-new_line='
-'
-
-# start outputting the current valgrind error in $out_prefix.++$count,
-# and the test case which failed in the corresponding .message file
-start_output () {
-	test -z "$output" || return
-
-	# progress
-	total_count=$(($total_count+1))
-	test -t 2 && printf "\rFound %d errors" $total_count >&2
-
-	count=$(($count+1))
-	output=$out_prefix.$count
-	: > $output
-
-	echo "*** $1 ***" > $output.message
-}
-
-finish_output () {
-	test ! -z "$output" || return
-	output=
-
-	# if a test case has more than one valgrind error, we need to
-	# copy the last .message file to the previous errors
-	test -z "$missing_message" || {
-		while test $missing_message -lt $count
-		do
-			cp $out_prefix.$count.message \
-				$out_prefix.$missing_message.message
-			missing_message=$(($missing_message+1))
-		done
-		missing_message=
-	}
-}
-
-# group the valgrind errors by backtrace
-output_all () {
-	last_line=
-	j=0
-	i=1
-	while test $i -le $count
-	do
-		# output <number> <backtrace-in-one-line>
-		echo "$i $(tr '\n' ' ' < $out_prefix.$i)"
-		i=$(($i+1))
-	done |
-	sort -t ' ' -k 2 | # order by <backtrace-in-one-line>
-	while read number line
-	do
-		# find duplicates, do not output backtrace twice
-		if test "$line" != "$last_line"
-		then
-			last_line=$line
-			j=$(($j+1))
-			printf "\nValgrind error $j:\n\n"
-			cat $out_prefix.$number
-			printf "\nfound in:\n"
-		fi
-		# print the test case where this came from
-		printf "\n"
-		cat $out_prefix.$number.message
-	done
-}
-
-handle_one () {
-	OLDIFS=$IFS
-	IFS="$new_line"
-	while read line
-	do
-		case "$line" in
-		# backtrace, possibly a new one
-		==[0-9]*)
-
-			# Does the current valgrind error have a message yet?
-			case "$output" in
-			*.message)
-				test -z "$missing_message" &&
-				missing_message=$count
-				output=
-			esac
-
-			start_output $(basename $1)
-			echo "$line" |
-			sed 's/==[0-9]*==/==valgrind==/' >> $output
-			;;
-		# end of backtrace
-		'}')
-			test -z "$output" || {
-				echo "$line" >> $output
-				test $output = ${output%.message} &&
-				output=$output.message
-			}
-			;;
-		# end of test case
-		'')
-			finish_output
-			;;
-		# normal line; if $output is set, print the line
-		*)
-			test -z "$output" || echo "$line" >> $output
-			;;
-		esac
-	done < $1
-	IFS=$OLDIFS
-
-	# just to be safe
-	finish_output
-}
-
-for test_script in "$TEST_OUTPUT_DIRECTORY"/test-results/*.out
-do
-	handle_one $test_script
-done
-
-output_all