diff options
Diffstat (limited to 'src/client/minidump_file_writer.cc')
-rw-r--r-- | src/client/minidump_file_writer.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/client/minidump_file_writer.cc b/src/client/minidump_file_writer.cc index db304662..c2674103 100644 --- a/src/client/minidump_file_writer.cc +++ b/src/client/minidump_file_writer.cc @@ -48,11 +48,16 @@ namespace google_breakpad { const MDRVA MinidumpFileWriter::kInvalidMDRVA = static_cast<MDRVA>(-1); -MinidumpFileWriter::MinidumpFileWriter() : file_(-1), position_(0), size_(0) { +MinidumpFileWriter::MinidumpFileWriter() + : file_(-1), + close_file_when_destroyed_(true), + position_(0), + size_(0) { } MinidumpFileWriter::~MinidumpFileWriter() { - Close(); + if (close_file_when_destroyed_) + Close(); } bool MinidumpFileWriter::Open(const char *path) { @@ -66,6 +71,12 @@ bool MinidumpFileWriter::Open(const char *path) { return file_ != -1; } +void MinidumpFileWriter::SetFile(const int file) { + assert(file_ == -1); + file_ = file; + close_file_when_destroyed_ = false; +} + bool MinidumpFileWriter::Close() { bool result = true; |