Index: third_party/WebKit/Source/wtf/Functional.h |
diff --git a/third_party/WebKit/Source/wtf/Functional.h b/third_party/WebKit/Source/wtf/Functional.h |
index dd3b7a28f3336a138427df76eaeed26b046ba96d..694963ae2bbf6c31b8e9394669225d86d7af404f 100644 |
--- a/third_party/WebKit/Source/wtf/Functional.h |
+++ b/third_party/WebKit/Source/wtf/Functional.h |
@@ -29,6 +29,7 @@ |
#include "base/tuple.h" |
#include "wtf/Allocator.h" |
#include "wtf/Assertions.h" |
+#include "wtf/PassOwnPtr.h" |
#include "wtf/PassRefPtr.h" |
#include "wtf/PtrUtil.h" |
#include "wtf/RefPtr.h" |
@@ -167,6 +168,12 @@ public: |
} |
template <typename... IncomingParameters> |
+ R operator()(const PassOwnPtr<C>& c, IncomingParameters&&... parameters) |
+ { |
+ return (c.get()->*m_function)(std::forward<IncomingParameters>(parameters)...); |
+ } |
+ |
+ template <typename... IncomingParameters> |
R operator()(const std::unique_ptr<C>& c, IncomingParameters&&... parameters) |
{ |
return (c.get()->*m_function)(std::forward<IncomingParameters>(parameters)...); |