aboutsummaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
authorHennadii Stepanov <32963518+hebasto@users.noreply.github.com>2018-10-05 21:04:08 +0300
committerHennadii Stepanov <32963518+hebasto@users.noreply.github.com>2018-11-05 13:26:43 +0200
commitc3f1821ac788e522e7558e3575150433450dcb8c (patch)
treef8151d24bfca9a789146b4ad4d4909f4532f29c0 /src/util
parent13d98ea0d76ee55c24e4fb76b962ed696a4b6123 (diff)
downloadbitcoin-c3f1821ac788e522e7558e3575150433450dcb8c.tar.xz
Make blockdir always net specific
The blocks directory is net specific by definition. Also this prevents the side effect of calling GetBlocksDir(false) in the non-mainnet environment.
Diffstat (limited to 'src/util')
-rw-r--r--src/util/system.cpp9
-rw-r--r--src/util/system.h3
2 files changed, 5 insertions, 7 deletions
diff --git a/src/util/system.cpp b/src/util/system.cpp
index 4f5dd2d6e9..38d8ef534e 100644
--- a/src/util/system.cpp
+++ b/src/util/system.cpp
@@ -728,18 +728,17 @@ fs::path GetDefaultDataDir()
#endif
}
-static fs::path g_blocks_path_cached;
static fs::path g_blocks_path_cache_net_specific;
static fs::path pathCached;
static fs::path pathCachedNetSpecific;
static CCriticalSection csPathCached;
-const fs::path &GetBlocksDir(bool fNetSpecific)
+const fs::path &GetBlocksDir()
{
LOCK(csPathCached);
- fs::path &path = fNetSpecific ? g_blocks_path_cache_net_specific : g_blocks_path_cached;
+ fs::path &path = g_blocks_path_cache_net_specific;
// This can be called during exceptions by LogPrintf(), so we cache the
// value so we don't have to do memory allocations after that.
@@ -755,9 +754,8 @@ const fs::path &GetBlocksDir(bool fNetSpecific)
} else {
path = GetDataDir(false);
}
- if (fNetSpecific)
- path /= BaseParams().DataDir();
+ path /= BaseParams().DataDir();
path /= "blocks";
fs::create_directories(path);
return path;
@@ -801,7 +799,6 @@ void ClearDatadirCache()
pathCached = fs::path();
pathCachedNetSpecific = fs::path();
- g_blocks_path_cached = fs::path();
g_blocks_path_cache_net_specific = fs::path();
}
diff --git a/src/util/system.h b/src/util/system.h
index 5634b8dd61..dd8868d166 100644
--- a/src/util/system.h
+++ b/src/util/system.h
@@ -78,7 +78,8 @@ void ReleaseDirectoryLocks();
bool TryCreateDirectories(const fs::path& p);
fs::path GetDefaultDataDir();
-const fs::path &GetBlocksDir(bool fNetSpecific = true);
+// The blocks directory is always net specific.
+const fs::path &GetBlocksDir();
const fs::path &GetDataDir(bool fNetSpecific = true);
void ClearDatadirCache();
fs::path GetConfigFile(const std::string& confPath);