aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/local-store.hh
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2012-11-09 18:00:33 +0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2012-11-09 18:00:33 +0100
commitea89df2b76811505239b508a570ac9c0ea591038 (patch)
tree7b11ea7186ad2b73bf12ebb2e51e7238a052db85 /src/libstore/local-store.hh
parent48c19c4633b1443015531ee3032b16b29b0a92f9 (diff)
Use vfork() instead of fork() if available
Hopefully this reduces the chance of hitting ‘unable to fork: Cannot allocate memory’ errors. vfork() is used for everything except starting builders.
Diffstat (limited to 'src/libstore/local-store.hh')
-rw-r--r--src/libstore/local-store.hh4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libstore/local-store.hh b/src/libstore/local-store.hh
index 8d745cfb8..ebf3f6e2b 100644
--- a/src/libstore/local-store.hh
+++ b/src/libstore/local-store.hh
@@ -208,6 +208,8 @@ public:
void markContentsGood(const Path & path);
+ void setSubstituterEnv();
+
private:
Path schemaPath;
@@ -238,6 +240,8 @@ private:
/* Cache for pathContentsGood(). */
std::map<Path, bool> pathContentsGoodCache;
+ bool didSetSubstituterEnv;
+
int getSchema();
void openDB(bool create);