summaryrefslogtreecommitdiff
path: root/tools/scaninc/scaninc.cpp
diff options
context:
space:
mode:
authorGriffinR <griffin.g.richards@gmail.com>2021-01-18 23:39:05 -0500
committerGriffinR <griffin.g.richards@gmail.com>2021-01-18 23:39:05 -0500
commitcd67c5e24055753615f96567c87c518b7487e879 (patch)
tree864e6d20f90aaccfa440ef5482998f98e9f7ebcc /tools/scaninc/scaninc.cpp
parentac62e8e563f9e74493a394a21c1bd8fa1570b184 (diff)
Sync scaninc with pokeemerald
Diffstat (limited to 'tools/scaninc/scaninc.cpp')
-rw-r--r--tools/scaninc/scaninc.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/tools/scaninc/scaninc.cpp b/tools/scaninc/scaninc.cpp
index b95cbd033..dcb16c0e7 100644
--- a/tools/scaninc/scaninc.cpp
+++ b/tools/scaninc/scaninc.cpp
@@ -97,19 +97,26 @@ int main(int argc, char **argv)
}
for (auto include : file.GetIncludes())
{
+ bool exists = false;
+ std::string path("");
for (auto includeDir : includeDirs)
{
- std::string path(includeDir + include);
+ path = includeDir + include;
if (CanOpenFile(path))
{
- bool inserted = dependencies.insert(path).second;
- if (inserted)
- {
- filesToProcess.push(path);
- }
+ exists = true;
break;
}
}
+ if (!exists && (file.FileType() == SourceFileType::Asm || file.FileType() == SourceFileType::Inc))
+ {
+ path = include;
+ }
+ bool inserted = dependencies.insert(path).second;
+ if (inserted && exists)
+ {
+ filesToProcess.push(path);
+ }
}
includeDirs.pop_back();
}