From 43c933d7f8e490d9dbf3f939f3b2f095a170dc84 Mon Sep 17 00:00:00 2001 From: "jcivelli@chromium.org" Date: Thu, 9 Aug 2012 22:59:58 +0000 Subject: Adding a way to create an ExceptionHandler that takes in a file descriptor where the minidump should be created, without the need of opening any other file. BUG=None TEST=Run unit-tests. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1007 4c0a9323-5329-0410-9bdc-e9ce6186880e --- src/client/minidump_file_writer.cc | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/client/minidump_file_writer.cc') 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(-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; -- cgit v1.2.1