aboutsummaryrefslogtreecommitdiff
path: root/src/libstore
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2015-08-21 13:57:53 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2015-08-21 13:57:53 +0200
commiteadb86f44726e12988d5f21b47e4c54b49b2092b (patch)
tree7bc583f1caeba82bf09f660c0367f8d33e9b24f1 /src/libstore
parent1d29db2a9f67af8a32b2f901a6da6697c539a50d (diff)
nix-collect-garbage: Revive --max-freed
Fixes #609.
Diffstat (limited to 'src/libstore')
-rw-r--r--src/libstore/store-api.cc10
-rw-r--r--src/libstore/store-api.hh9
2 files changed, 4 insertions, 15 deletions
diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc
index bb0bc0933..a73ebd824 100644
--- a/src/libstore/store-api.cc
+++ b/src/libstore/store-api.cc
@@ -2,20 +2,10 @@
#include "globals.hh"
#include "util.hh"
-#include <climits>
-
namespace nix {
-GCOptions::GCOptions()
-{
- action = gcDeleteDead;
- ignoreLiveness = false;
- maxFreed = ULLONG_MAX;
-}
-
-
bool isInStore(const Path & path)
{
return isInDir(path, settings.nixStore);
diff --git a/src/libstore/store-api.hh b/src/libstore/store-api.hh
index d04a040bb..235017503 100644
--- a/src/libstore/store-api.hh
+++ b/src/libstore/store-api.hh
@@ -4,6 +4,7 @@
#include "serialise.hh"
#include <string>
+#include <limits>
#include <map>
#include <memory>
@@ -36,21 +37,19 @@ struct GCOptions
gcDeleteSpecific,
} GCAction;
- GCAction action;
+ GCAction action{gcDeleteDead};
/* If `ignoreLiveness' is set, then reachability from the roots is
ignored (dangerous!). However, the paths must still be
unreferenced *within* the store (i.e., there can be no other
store paths that depend on them). */
- bool ignoreLiveness;
+ bool ignoreLiveness{false};
/* For `gcDeleteSpecific', the paths to delete. */
PathSet pathsToDelete;
/* Stop after at least `maxFreed' bytes have been freed. */
- unsigned long long maxFreed;
-
- GCOptions();
+ unsigned long long maxFreed{std::numeric_limits<unsigned long long>::max()};
};