From 33d035804fc46b117f939cc1958378dd35c2c6ad Mon Sep 17 00:00:00 2001 From: Paul Ferrand Date: Fri, 27 Dec 2019 18:36:28 +0100 Subject: [PATCH] Add the root file in the included file vector --- src/sfizz/Parser.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/sfizz/Parser.cpp b/src/sfizz/Parser.cpp index a6db4be4..f0286db6 100644 --- a/src/sfizz/Parser.cpp +++ b/src/sfizz/Parser.cpp @@ -39,11 +39,14 @@ void removeCommentOnLine(absl::string_view& line) bool sfz::Parser::loadSfzFile(const fs::path& file) { + includedFiles.clear(); + const auto sfzFile = file.is_absolute() ? file : originalDirectory / file; if (!fs::exists(sfzFile)) return false; originalDirectory = file.parent_path(); + includedFiles.push_back(file); std::vector lines; readSfzFile(file, lines); @@ -62,7 +65,7 @@ bool sfz::Parser::loadSfzFile(const fs::path& file) // Store or handle members while(findOpcode(members, opcode, value)) currentMembers.emplace_back(opcode, value); - + callback(header, currentMembers); currentMembers.clear(); } @@ -107,7 +110,7 @@ void sfz::Parser::readSfzFile(const fs::path& fileName, std::vector // New #define if (findDefine(tmpView, variable, value)) { - + defines[std::string(variable)] = std::string(value); continue; }