Commit 0c60107e authored by gabime's avatar gabime

refactoed file_helper

parent 49eb9cbd
......@@ -28,15 +28,14 @@ SPDLOG_INLINE file_helper::~file_helper()
SPDLOG_INLINE void file_helper::open(const filename_t &fname, bool truncate)
{
close();
auto *mode = truncate ? SPDLOG_FILENAME_T("wb") : SPDLOG_FILENAME_T("ab");
auto folder_name = os::dir_name(fname);
filename_ = fname;
// create containing folder if not empty string and not exists already
os::create_dir(os::dir_name(fname));
auto *mode = truncate ? SPDLOG_FILENAME_T("wb") : SPDLOG_FILENAME_T("ab");
for (int tries = 0; tries < open_tries_; ++tries)
{
// create if not empty and not exists already
os::create_dir(folder_name);
if (!os::fopen_s(&fd_, fname, mode))
{
return;
......
......@@ -499,6 +499,7 @@ SPDLOG_INLINE bool create_dir(filename_t path)
size_t search_offset = 0;
do
{
fmt::string_view t;
auto token_pos = path.find(folder_sep, search_offset);
// treat the entire path as a folder if no folder separator not found
if (token_pos == filename_t::npos)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment