Disable exception handling.

Use -fno-exceptions in cmake.
On MSVC, enable _HAS_EXCEPTION=0.
Cleanup throw/catch from the source.
Create yaml.cpp enclave because it needs exception to work.
Disable thread_local optimizations in logs.cpp (TODO).
Implement cpu_counter for cpu_threads (moved globals).
This commit is contained in:
Nekotekina committed 2020-03-12 16:03:08 +03:00
1 parent 47bbfdd2aa
commit 04dedb17eb
39 files changed
+421 -437

No files matched your search

+4 -8
View File
@@ -1,5 +1,5 @@
#include "bin_patch.h"
#include <yaml-cpp/yaml.h>
#include "util/yaml.hpp"
#include "File.h"
#include "Config.h"
@@ -34,15 +34,11 @@ void patch_engine::append(const std::string& patch)
{
if (fs::file f{patch})
{
YAML::Node root;
auto [root, error] = yaml_load(f.to_string());
try
if (!error.empty())
{
root = YAML::Load(f.to_string());
}
catch (const std::exception& e)
{
patch_log.fatal("Failed to load patch file %s\n%s thrown: %s", patch, typeid(e).name(), e.what());
patch_log.fatal("Failed to load patch file %s:\n%s", patch, error);
return;
}