aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src
diff options
context:
space:
mode:
Diffstat (limited to 'toolsrc/src')
-rw-r--r--toolsrc/src/vcpkg/archives.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/toolsrc/src/vcpkg/archives.cpp b/toolsrc/src/vcpkg/archives.cpp
index 4c97a7b5a..0faf756ad 100644
--- a/toolsrc/src/vcpkg/archives.cpp
+++ b/toolsrc/src/vcpkg/archives.cpp
@@ -1,3 +1,4 @@
+#include <vcpkg/base/system.print.h>
#include <vcpkg/base/system.process.h>
#include <vcpkg/archives.h>
@@ -97,12 +98,16 @@ namespace vcpkg::Archives
fs.rename(to_path_partial, to_path, ec);
- for (int i = 0; i < 5 && ec; i++)
+ using namespace std::chrono_literals;
+
+ auto retry_delay = 8ms;
+
+ for (int i = 0; i < 10 && ec; i++)
{
- i++;
using namespace std::chrono_literals;
- std::this_thread::sleep_for(i * 100ms);
+ std::this_thread::sleep_for(retry_delay);
fs.rename(to_path_partial, to_path, ec);
+ retry_delay *= 2;
}
Checks::check_exit(VCPKG_LINE_INFO,