aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Interpreter/CommandInterpreter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Interpreter/CommandInterpreter.cpp')
-rw-r--r--lldb/source/Interpreter/CommandInterpreter.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/lldb/source/Interpreter/CommandInterpreter.cpp b/lldb/source/Interpreter/CommandInterpreter.cpp
index 8c77227..1f67468 100644
--- a/lldb/source/Interpreter/CommandInterpreter.cpp
+++ b/lldb/source/Interpreter/CommandInterpreter.cpp
@@ -2091,9 +2091,12 @@ static void GetHomeInitFile(llvm::SmallVectorImpl<char> &init_file,
FileSystem::Instance().Resolve(init_file);
}
-static void GetHomeREPLInitFile(llvm::SmallVectorImpl<char> &init_file,
- LanguageType language) {
- if (language == LanguageType::eLanguageTypeUnknown)
+static void GetHomeREPLInitFile(llvm::SmallVectorImpl<char> &init_file) {
+ LanguageSet repl_languages = Language::GetLanguagesSupportingREPLs();
+ LanguageType language = eLanguageTypeUnknown;
+ if (auto main_repl_language = repl_languages.GetSingularLanguage())
+ language = *main_repl_language;
+ else
return;
std::string init_file_name =
@@ -2191,13 +2194,8 @@ void CommandInterpreter::SourceInitFileHome(CommandReturnObject &result,
llvm::SmallString<128> init_file;
- if (is_repl) {
- LanguageType language = {};
- TargetSP target_sp = GetDebugger().GetSelectedTarget();
- if (target_sp)
- language = target_sp->GetLanguage();
- GetHomeREPLInitFile(init_file, language);
- }
+ if (is_repl)
+ GetHomeREPLInitFile(init_file);
if (init_file.empty())
GetHomeInitFile(init_file);