Add the root file in the included file vector
This commit is contained in:
parent
8806ec2215
commit
33d035804f
1 changed files with 5 additions and 2 deletions
|
|
@ -39,11 +39,14 @@ void removeCommentOnLine(absl::string_view& line)
|
||||||
|
|
||||||
bool sfz::Parser::loadSfzFile(const fs::path& file)
|
bool sfz::Parser::loadSfzFile(const fs::path& file)
|
||||||
{
|
{
|
||||||
|
includedFiles.clear();
|
||||||
|
|
||||||
const auto sfzFile = file.is_absolute() ? file : originalDirectory / file;
|
const auto sfzFile = file.is_absolute() ? file : originalDirectory / file;
|
||||||
if (!fs::exists(sfzFile))
|
if (!fs::exists(sfzFile))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
originalDirectory = file.parent_path();
|
originalDirectory = file.parent_path();
|
||||||
|
includedFiles.push_back(file);
|
||||||
std::vector<std::string> lines;
|
std::vector<std::string> lines;
|
||||||
readSfzFile(file, lines);
|
readSfzFile(file, lines);
|
||||||
|
|
||||||
|
|
@ -62,7 +65,7 @@ bool sfz::Parser::loadSfzFile(const fs::path& file)
|
||||||
// Store or handle members
|
// Store or handle members
|
||||||
while(findOpcode(members, opcode, value))
|
while(findOpcode(members, opcode, value))
|
||||||
currentMembers.emplace_back(opcode, value);
|
currentMembers.emplace_back(opcode, value);
|
||||||
|
|
||||||
callback(header, currentMembers);
|
callback(header, currentMembers);
|
||||||
currentMembers.clear();
|
currentMembers.clear();
|
||||||
}
|
}
|
||||||
|
|
@ -107,7 +110,7 @@ void sfz::Parser::readSfzFile(const fs::path& fileName, std::vector<std::string>
|
||||||
|
|
||||||
// New #define
|
// New #define
|
||||||
if (findDefine(tmpView, variable, value)) {
|
if (findDefine(tmpView, variable, value)) {
|
||||||
|
|
||||||
defines[std::string(variable)] = std::string(value);
|
defines[std::string(variable)] = std::string(value);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue