Index: ipc/ipc_channel_factory.cc |
diff --git a/ipc/ipc_channel_factory.cc b/ipc/ipc_channel_factory.cc |
index 244024c2f6dcf42bb0b8288ed3298b0547a6857e..5c24284f95dd3e64010cacbd9774e0d2707aa131 100644 |
--- a/ipc/ipc_channel_factory.cc |
+++ b/ipc/ipc_channel_factory.cc |
@@ -5,7 +5,6 @@ |
#include "ipc/ipc_channel_factory.h" |
#include "base/file_util.h" |
-#include "base/files/scoped_file.h" |
#include "base/logging.h" |
#include "ipc/unix_domain_socket_util.h" |
@@ -52,20 +51,21 @@ |
delegate_->OnListenError(); |
return; |
} |
- base::ScopedFD scoped_fd(new_fd); |
- if (!scoped_fd.is_valid()) { |
+ if (new_fd < 0) { |
// The accept() failed, but not in such a way that the factory needs to be |
// shut down. |
return; |
} |
+ file_util::ScopedFD scoped_fd(&new_fd); |
+ |
// Verify that the IPC channel peer is running as the same user. |
- if (!IsPeerAuthorized(scoped_fd.get())) |
+ if (!IsPeerAuthorized(new_fd)) |
return; |
ChannelHandle handle(std::string(), |
- base::FileDescriptor(scoped_fd.release(), true)); |
+ base::FileDescriptor(*scoped_fd.release(), true)); |
delegate_->OnClientConnected(handle); |
} |