From 5cf5ffa302324b6a35eab2581cce57c5ea4242ea Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 19 Mar 2023 03:12:54 +0100 Subject: loader: fix prefix stripping --- loader/atlas.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/loader/atlas.cpp b/loader/atlas.cpp index 0a5afd7b..0f059135 100644 --- a/loader/atlas.cpp +++ b/loader/atlas.cpp @@ -47,11 +47,11 @@ std::shared_ptr loader_impl::anim_atlas(StringView name, StringView fm_soft_assert(dir && dir[dir.size()-1] == '/'); char path_buf[FILENAME_MAX]; name = Path::splitExtension(name).first(); - fm_soft_assert(dir.size() + name.size() + 1 + 1 < FILENAME_MAX); - std::memcpy(path_buf, dir.data(), dir.size()); - path_buf[dir.size()] = '/'; - std::memcpy(&path_buf[dir.size() + 1], name.data(), name.size()); - path_buf[dir.size() + 1 + name.size()] = '\0'; + const auto dirsiz = dir.size(), namesiz = name.size(); + fm_soft_assert(dirsiz + namesiz + 1 < FILENAME_MAX); + std::memcpy(path_buf, dir.data(), dirsiz); + std::memcpy(&path_buf[dirsiz], name.data(), namesiz); + path_buf[dirsiz + namesiz] = '\0'; const StringView path = path_buf; if (auto it = anim_atlas_map.find(path); it != anim_atlas_map.end()) -- cgit v1.2.3