================ @@ -24,41 +30,95 @@ using namespace llvm; namespace lldb_dap { -FifoFile::FifoFile(StringRef path) : m_path(path) {} - +FifoFile::FifoFile(StringRef path) + : m_path(path), m_file(fopen(path.data(), "r+")) { + std::error_code EC; + if (m_file == nullptr) { + EC = std::error_code(errno, std::generic_category()); + llvm::errs() << "Failed to open fifo file " << path << ": " << EC.message() + << "\n"; + std::terminate(); ---------------- ashgti wrote:
Its a bit odd for this to fully terminate the running program if the allocation fails. Can we adjust this to use either have a static `create` function that returns an `llvm::Expected<FifoFile>` or have an `open` method that returns an `llvm::Error` instead of terminating the running program. https://github.com/llvm/llvm-project/pull/121269 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits