From 5f3518ca83ad22cd77f24a05110c52907a46565d Mon Sep 17 00:00:00 2001 From: Congcong Kuo Date: Sun, 11 May 2025 16:31:22 +0800 Subject: [PATCH] =?UTF-8?q?daemon:=20Replace=20=E2=80=98random=5Fshuffle?= =?UTF-8?q?=E2=80=99=20with=20=E2=80=98shuffle=E2=80=99.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ‘std::random_shuffle’ was removed in C++14. * nix/libstore/gc.cc (LocalStore::collectGarbage): Use ‘std::random’ and ‘std::shuffle’. Change-Id: If91ed3ec3596a419ae7c87d7ce677e0970853e9f Signed-off-by: Ludovic Courtès --- nix/libstore/gc.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nix/libstore/gc.cc b/nix/libstore/gc.cc index 16519116e4f..261ea79ab32 100644 --- a/nix/libstore/gc.cc +++ b/nix/libstore/gc.cc @@ -4,6 +4,7 @@ #include #include +#include #include #include @@ -745,7 +746,9 @@ void LocalStore::collectGarbage(const GCOptions & options, GCResults & results) alphabetically first (e.g. /nix/store/000...). This matters when using --max-freed etc. */ vector entries_(entries.begin(), entries.end()); - random_shuffle(entries_.begin(), entries_.end()); + std::random_device seeder; + std::default_random_engine generator(seeder()); + std::shuffle(entries_.begin(), entries_.end(), generator); foreach (vector::iterator, i, entries_) tryToDelete(state, *i);