diff options
Diffstat (limited to 'source/Commands/CommandObjectReproducer.cpp')
-rw-r--r-- | source/Commands/CommandObjectReproducer.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/source/Commands/CommandObjectReproducer.cpp b/source/Commands/CommandObjectReproducer.cpp index 424595fc0..0c2e95d5d 100644 --- a/source/Commands/CommandObjectReproducer.cpp +++ b/source/Commands/CommandObjectReproducer.cpp @@ -265,19 +265,12 @@ protected: return true; } case eReproducerProviderVersion: { - FileSpec version_file = loader->GetFile<VersionProvider::Info>(); - - // Load the version info into a buffer. - ErrorOr<std::unique_ptr<MemoryBuffer>> buffer = - vfs::getRealFileSystem()->getBufferForFile(version_file.GetPath()); - if (!buffer) { - SetError(result, errorCodeToError(buffer.getError())); + Expected<std::string> version = loader->LoadBuffer<VersionProvider>(); + if (!version) { + SetError(result, version.takeError()); return false; } - - // Return the version string. - StringRef version = (*buffer)->getBuffer(); - result.AppendMessage(version.str()); + result.AppendMessage(*version); result.SetStatus(eReturnStatusSuccessFinishResult); return true; } |