summaryrefslogtreecommitdiffstats
path: root/chromium/mojo/embedder/platform_handle_utils_posix.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/mojo/embedder/platform_handle_utils_posix.cc')
-rw-r--r--chromium/mojo/embedder/platform_handle_utils_posix.cc22
1 files changed, 22 insertions, 0 deletions
diff --git a/chromium/mojo/embedder/platform_handle_utils_posix.cc b/chromium/mojo/embedder/platform_handle_utils_posix.cc
new file mode 100644
index 00000000000..b6d93bb41da
--- /dev/null
+++ b/chromium/mojo/embedder/platform_handle_utils_posix.cc
@@ -0,0 +1,22 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "mojo/embedder/platform_handle_utils.h"
+
+#include <unistd.h>
+
+#include "base/logging.h"
+
+namespace mojo {
+namespace embedder {
+
+ScopedPlatformHandle DuplicatePlatformHandle(PlatformHandle platform_handle) {
+ DCHECK(platform_handle.is_valid());
+ // Note that |dup()| returns -1 on error (which is exactly the value we use
+ // for invalid |PlatformHandle| FDs).
+ return ScopedPlatformHandle(PlatformHandle(dup(platform_handle.fd)));
+}
+
+} // namespace embedder
+} // namespace mojo