From 421de62232cb19339199b20f3f092e90b5ad8a22 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Tue, 3 Jan 2012 14:22:45 +0000 Subject: [PATCH] unlink target and retry to avoid intermittent Win32 failures --- util/fipslink.pl | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/util/fipslink.pl b/util/fipslink.pl index 8b6fbad7d8..262d691d1b 100644 --- a/util/fipslink.pl +++ b/util/fipslink.pl @@ -57,6 +57,15 @@ print "$fips_cc -DHMAC_SHA1_SIG=\\\"$fips_hash\\\" $fips_cc_args $fips_libdir/fi system "$fips_cc -DHMAC_SHA1_SIG=\\\"$fips_hash\\\" $fips_cc_args $fips_libdir/fips_premain.c"; die "Second stage Compile failure" if $? != 0; +my $delcnt = 0; +# On windows the previous file doesn't always close straight away +# so retry an unlink operation a few times if it fails. +while (!unlink($target)) + { + sleep 2; + die "Can't delete $target" if ($delcnt++ > 10); + } + print "$fips_link @ARGV\n"; system "$fips_link @ARGV"; -- 2.25.1