aboutsummaryrefslogtreecommitdiff
path: root/src/client/linux/handler/minidump_descriptor.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/linux/handler/minidump_descriptor.cc')
-rw-r--r--src/client/linux/handler/minidump_descriptor.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/client/linux/handler/minidump_descriptor.cc b/src/client/linux/handler/minidump_descriptor.cc
index 130764af..af314a94 100644
--- a/src/client/linux/handler/minidump_descriptor.cc
+++ b/src/client/linux/handler/minidump_descriptor.cc
@@ -45,6 +45,21 @@ MinidumpDescriptor::MinidumpDescriptor(const MinidumpDescriptor& descriptor)
assert(descriptor.path_.empty());
}
+MinidumpDescriptor& MinidumpDescriptor::operator=(
+ const MinidumpDescriptor& descriptor) {
+ assert(descriptor.path_.empty());
+
+ fd_ = descriptor.fd_;
+ directory_ = descriptor.directory_;
+ path_.clear();
+ if (c_path_) {
+ // This descriptor already had a path set, so generate a new one.
+ c_path_ = NULL;
+ UpdatePath();
+ }
+ return *this;
+}
+
void MinidumpDescriptor::UpdatePath() {
assert(fd_ == -1 && !directory_.empty());