diff options
Diffstat (limited to 'src/common/linux')
-rw-r--r-- | src/common/linux/dump_symbols.cc | 8 | ||||
-rw-r--r-- | src/common/linux/dump_symbols.h | 2 |
2 files changed, 2 insertions, 8 deletions
diff --git a/src/common/linux/dump_symbols.cc b/src/common/linux/dump_symbols.cc index f102016d..5c2d6254 100644 --- a/src/common/linux/dump_symbols.cc +++ b/src/common/linux/dump_symbols.cc @@ -616,7 +616,7 @@ class MmapWrapper { namespace google_breakpad { bool DumpSymbols::WriteSymbolFile(const std::string &obj_file, - const std::string &symbol_file) { + int sym_fd) { int obj_fd = open(obj_file.c_str(), O_RDONLY); if (obj_fd < 0) return false; @@ -636,16 +636,10 @@ bool DumpSymbols::WriteSymbolFile(const std::string &obj_file, if (!LoadSymbols(elf_header, &symbols)) return false; // Write to symbol file. - int sym_fd = open(symbol_file.c_str(), O_CREAT | O_WRONLY | O_TRUNC, 0666); - if (sym_fd < 0) - return false; - FDWrapper sym_fd_wrapper(sym_fd); if (WriteModuleInfo(sym_fd, elf_header->e_machine, obj_file) && DumpStabSymbols(sym_fd, symbols)) return true; - // Remove the symbol file if failed to write the symbols. - unlink(symbol_file.c_str()); return false; } diff --git a/src/common/linux/dump_symbols.h b/src/common/linux/dump_symbols.h index e0cbdf66..64f4c9e6 100644 --- a/src/common/linux/dump_symbols.h +++ b/src/common/linux/dump_symbols.h @@ -40,7 +40,7 @@ namespace google_breakpad { class DumpSymbols { public: bool WriteSymbolFile(const std::string &obj_file, - const std::string &symbol_file); + int sym_fd); }; } // namespace google_breakpad |