| Index: base/posix/global_descriptors.cc
|
| diff --git a/base/posix/global_descriptors.cc b/base/posix/global_descriptors.cc
|
| index 6c187838ad69d63051a1155d64c26623de8a2db0..8da808e52d977f5d1036b0a61902bb3799c1c7ff 100644
|
| --- a/base/posix/global_descriptors.cc
|
| +++ b/base/posix/global_descriptors.cc
|
| @@ -47,6 +47,22 @@ int GlobalDescriptors::MaybeGet(Key key) const {
|
| return -1;
|
| }
|
|
|
| +base::ScopedFD GlobalDescriptors::TakeFD(
|
| + Key key,
|
| + base::MemoryMappedFile::Region* region) {
|
| + base::ScopedFD fd;
|
| + for (Mapping::iterator i = descriptors_.begin(); i != descriptors_.end();
|
| + ++i) {
|
| + if (i->key == key) {
|
| + *region = i->region;
|
| + fd.reset(i->fd);
|
| + descriptors_.erase(i);
|
| + break;
|
| + }
|
| + }
|
| + return fd;
|
| +}
|
| +
|
| void GlobalDescriptors::Set(Key key, int fd) {
|
| Set(key, fd, base::MemoryMappedFile::Region::kWholeFile);
|
| }
|
|
|