diff options
author | Giacomo Pozzoni <giacomopoz@gmail.com> | 2021-12-17 14:16:18 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-01-04 20:44:26 +0100 |
commit | feb36f3f7d73a71ca5c7e9341e8bc2b3e5796783 (patch) | |
tree | 3b599527aabcc8874b46e9179979bcfb89e626bb /src | |
parent | 071a8b5b7dff9ae1db53000477caa45a13f54bff (diff) |
Tools/MMAPs: Show an error when running mmaps_generator built in Debug mode (#27412)
* Tools/MMAPs: Show an error when running mmaps_generator built in Debug mode
* Fix GCC build
(cherry picked from commit 8c80f28581646af110c4d2b316209ef291a95587)
Diffstat (limited to 'src')
-rw-r--r-- | src/tools/mmaps_generator/PathGenerator.cpp | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/src/tools/mmaps_generator/PathGenerator.cpp b/src/tools/mmaps_generator/PathGenerator.cpp index ff3cf32e8df..9f7afb54048 100644 --- a/src/tools/mmaps_generator/PathGenerator.cpp +++ b/src/tools/mmaps_generator/PathGenerator.cpp @@ -110,6 +110,13 @@ bool checkDirectories(bool debugOutput, std::vector<std::string>& dbcLocales) return true; } +int finish(char const* message, int returnValue) +{ + printf("%s", message); + getchar(); // Wait for user input + return returnValue; +} + bool handleArgs(int argc, char** argv, int &mapnum, int &tileX, @@ -128,6 +135,7 @@ bool handleArgs(int argc, char** argv, unsigned int& threads) { char* param = nullptr; + [[maybe_unused]] bool allowDebug = false; for (int i = 1; i < argc; ++i) { if (strcmp(argv[i], "--maxAngle") == 0) @@ -280,6 +288,10 @@ bool handleArgs(int argc, char** argv, offMeshInputPath = param; } + else if (strcmp(argv[i], "--allowDebug") == 0) + { + allowDebug = true; + } else if (!strcmp(argv[i], "--help") || !strcmp(argv[i], "-?")) { printf("%s\n", Readme); @@ -299,14 +311,16 @@ bool handleArgs(int argc, char** argv, } } - return true; -} +#ifndef NDEBUG + if (!allowDebug) + { + finish("Build mmaps_generator in RelWithDebInfo or Release mode or it will take hours to complete!!!\nUse '--allowDebug' argument if you really want to run this tool in Debug.\n", -2); + silent = true; + return false; + } +#endif -int finish(char const* message, int returnValue) -{ - printf("%s", message); - getchar(); // Wait for user input - return returnValue; + return true; } std::unordered_map<uint32, uint8> LoadLiquid(std::string const& locale, bool silent, int32 errorExitCode) |