diff options
| author | 2018-01-26 19:29:31 +0000 | |
|---|---|---|
| committer | 2018-01-26 19:29:31 +0000 | |
| commit | 8552eb769c0231ac1d4b68f94cee65b40dde688c (patch) | |
| tree | b3f5a9bbc86a840c231841b2d3ba360e181c27f7 | |
| parent | c8f0e0dab9f76cc7fdbfe451603c7c203078637d (diff) | |
| parent | 71411b877a080f85a9e4014ee3a5904582ac46e3 (diff) | |
Merge "DropBoxManager: Allow adding a file using an fd" am: a946cc9f53
am: 71411b877a
Change-Id: I8c07b8650a508f03352075ac7bd6e7943f6cacb4
| -rw-r--r-- | libs/services/include/android/os/DropBoxManager.h | 6 | ||||
| -rw-r--r-- | libs/services/src/os/DropBoxManager.cpp | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/libs/services/include/android/os/DropBoxManager.h b/libs/services/include/android/os/DropBoxManager.h index 8717178bb7d6..3449a7b72283 100644 --- a/libs/services/include/android/os/DropBoxManager.h +++ b/libs/services/include/android/os/DropBoxManager.h @@ -57,7 +57,11 @@ public: // and a handle will be passed to the system process, so no additional permissions // are required from the system process. Returns NULL if the file can't be opened. Status addFile(const String16& tag, const string& filename, int flags); - + + // Create a new Entry from an already opened file. Takes ownership of the + // file descriptor. + Status addFile(const String16& tag, int fd, int flags); + class Entry : public virtual RefBase, public Parcelable { public: Entry(); diff --git a/libs/services/src/os/DropBoxManager.cpp b/libs/services/src/os/DropBoxManager.cpp index bbb45f022a87..e8e34d7c4cb3 100644 --- a/libs/services/src/os/DropBoxManager.cpp +++ b/libs/services/src/os/DropBoxManager.cpp @@ -179,7 +179,12 @@ DropBoxManager::addFile(const String16& tag, const string& filename, int flags) ALOGW("DropboxManager: %s", message.c_str()); return Status::fromExceptionCode(Status::EX_ILLEGAL_STATE, message.c_str()); } + return addFile(tag, fd, flags); +} +Status +DropBoxManager::addFile(const String16& tag, int fd, int flags) +{ Entry entry(tag, flags, fd); return add(entry); } |