Avoid passing temporary to get_ref_default()
authorNick Terrell <terrelln@fb.com>
Fri, 24 Mar 2017 22:00:07 +0000 (15:00 -0700)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Fri, 24 Mar 2017 22:05:11 +0000 (15:05 -0700)
Summary: `get_ref_default()` won't accept temporary default values after D4768769.

Reviewed By: yfeldblum

Differential Revision: D4769043

fbshipit-source-id: 46b039e13b80721922f69036c6cc02f5642a26f9

folly/io/async/Request.cpp

index 0c56d20..e82b16f 100644 (file)
@@ -61,12 +61,14 @@ bool RequestContext::hasContextData(const std::string& val) const {
 }
 
 RequestData* RequestContext::getContextData(const std::string& val) {
-  return get_ref_default(*data_.rlock(), val, nullptr).get();
+  const std::unique_ptr<RequestData> dflt{nullptr};
+  return get_ref_default(*data_.rlock(), val, dflt).get();
 }
 
 const RequestData* RequestContext::getContextData(
     const std::string& val) const {
-  return get_ref_default(*data_.rlock(), val, nullptr).get();
+  const std::unique_ptr<RequestData> dflt{nullptr};
+  return get_ref_default(*data_.rlock(), val, dflt).get();
 }
 
 void RequestContext::onSet() {