summaryrefslogtreecommitdiff
path: root/src/Companion.cpp
diff options
context:
space:
mode:
authorKiritoDv <kiritodev01@gmail.com>2024-03-17 18:27:18 -0600
committerKiritoDv <kiritodev01@gmail.com>2024-03-17 18:27:18 -0600
commitc967f85c7cc08649b937835bb0cd95d02768c072 (patch)
tree6f99f1000ef57dbc40859592fe366dccf4e768d5 /src/Companion.cpp
parent515a939b066f23d71ff32ae47e864608d392479c (diff)
Added full shindou support but crashes on sf64
Diffstat (limited to 'src/Companion.cpp')
-rw-r--r--src/Companion.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Companion.cpp b/src/Companion.cpp
index 7784fe7..c8a296a 100644
--- a/src/Companion.cpp
+++ b/src/Companion.cpp
@@ -166,7 +166,7 @@ void Companion::ExtractNode(YAML::Node& node, std::string& name, SWrapper* binar
auto impl = factory->get();
auto exporter = impl->GetExporter(this->gConfig.exporterType);
- if(!exporter.has_value()){
+ if(!exporter.has_value() && type != "AUDIO:HEADER"){
SPDLOG_WARN("No exporter found for {}", name);
return;
}
@@ -652,8 +652,8 @@ void Companion::Process() {
this->ExtractNode(node, output, wrapper);
}
} else {
- const auto offset = assetNode["offset"].as<uint32_t>();
- if(gCurrentFileOffset) {
+ if(gCurrentFileOffset && assetNode["offset"]) {
+ const auto offset = assetNode["offset"].as<uint32_t>();
if (IS_SEGMENTED(offset) == false) {
assetNode["offset"] = (gCurrentSegmentNumber << 24) | offset;
}