summaryrefslogtreecommitdiff
path: root/lib/backupstore/BackupStoreFile.h
diff options
context:
space:
mode:
authorChris Wilson <chris+github@qwirx.com>2013-08-22 00:17:34 +0000
committerChris Wilson <chris+github@qwirx.com>2013-08-22 00:17:34 +0000
commitc8af9906b692de24dbf1b03c563d85fa85d3a4dc (patch)
tree16c97aa693fb5e7133b4e10c826c901bdcddbe10 /lib/backupstore/BackupStoreFile.h
parent410c85a13d5812efeadb13e3ffa82b9629331100 (diff)
Pass std::auto_ptr objects to Protocol for upload.
Passing raw pointers is bad C++ style, and dangerous, because Protocol will free the passed-in pointers after uploading them, so we should not keep using them. Reduce code duplication in BackupClientDirectoryRecord patch/normal upload. Return a std::auto_ptr<BackupStoreFileEncodeStream> instead of a std::auto_ptr<IOStream> from BackupStoreFile::EncodeFile* functions.
Diffstat (limited to 'lib/backupstore/BackupStoreFile.h')
-rw-r--r--lib/backupstore/BackupStoreFile.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/backupstore/BackupStoreFile.h b/lib/backupstore/BackupStoreFile.h
index e24ff8cb..7c72e010 100644
--- a/lib/backupstore/BackupStoreFile.h
+++ b/lib/backupstore/BackupStoreFile.h
@@ -60,6 +60,8 @@ public:
virtual bool IsManaged() = 0;
};
+class BackupStoreFileEncodeStream;
+
// --------------------------------------------------------------------------
//
// Class
@@ -119,7 +121,7 @@ public:
// Main interface
- static std::auto_ptr<IOStream> EncodeFile
+ static std::auto_ptr<BackupStoreFileEncodeStream> EncodeFile
(
const std::string& Filename,
int64_t ContainerID, const BackupStoreFilename &rStoreFilename,
@@ -127,7 +129,7 @@ public:
ReadLoggingStream::Logger* pLogger = NULL,
RunStatusProvider* pRunStatusProvider = NULL
);
- static std::auto_ptr<IOStream> EncodeFileDiff
+ static std::auto_ptr<BackupStoreFileEncodeStream> EncodeFileDiff
(
const std::string& Filename, int64_t ContainerID,
const BackupStoreFilename &rStoreFilename,