Merge pull request #13274 from ethereum/lsp-fix-include-path

lsp: Fixes initialization phase if `include-paths` was not set at all then also no error should be generated.
This commit is contained in:
Christian Parpart 2022-07-13 17:13:58 +02:00 committed by GitHub
commit ed039abb97
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -149,25 +149,28 @@ void LanguageServer::changeConfiguration(Json::Value const& _settings)
{
m_settingsObject = _settings;
Json::Value jsonIncludePaths = _settings["include-paths"];
int typeFailureCount = 0;
if (jsonIncludePaths && jsonIncludePaths.isArray())
if (jsonIncludePaths)
{
vector<boost::filesystem::path> includePaths;
for (Json::Value const& jsonPath: jsonIncludePaths)
int typeFailureCount = 0;
if (jsonIncludePaths.isArray())
{
if (jsonPath.isString())
includePaths.emplace_back(boost::filesystem::path(jsonPath.asString()));
else
typeFailureCount++;
vector<boost::filesystem::path> includePaths;
for (Json::Value const& jsonPath: jsonIncludePaths)
{
if (jsonPath.isString())
includePaths.emplace_back(boost::filesystem::path(jsonPath.asString()));
else
typeFailureCount++;
}
m_fileRepository.setIncludePaths(move(includePaths));
}
m_fileRepository.setIncludePaths(move(includePaths));
}
else
++typeFailureCount;
else
++typeFailureCount;
if (typeFailureCount)
m_client.trace("Invalid JSON configuration passed. \"include-paths\" must be an array of strings.");
if (typeFailureCount)
m_client.trace("Invalid JSON configuration passed. \"include-paths\" must be an array of strings.");
}
}
void LanguageServer::compile()