From b0c37d62fec98abb0a4d73d48b6eb4217438e7b8 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Sun, 22 Sep 2013 15:14:31 -0700 Subject: [PATCH] Workaround tr1::functional bugs. --- src/ripple_app/main/RPCHTTPServer.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/ripple_app/main/RPCHTTPServer.cpp b/src/ripple_app/main/RPCHTTPServer.cpp index 2486a6cc0..7771be883 100644 --- a/src/ripple_app/main/RPCHTTPServer.cpp +++ b/src/ripple_app/main/RPCHTTPServer.cpp @@ -113,9 +113,13 @@ public: processSession (job, session); #else session.detach(); - m_jobQueue.addJob (jtRPC, "RPC", bind ( - &RPCHTTPServerImp::processSession, this, _1, - ref (session))); + + // The "boost::"'s are a workaround for broken versions of tr1::functional that + // require the reference wrapper to be callable. HTTP::Session has abstract functions + // and so references to it are not callable. + m_jobQueue.addJob (jtRPC, "RPC", boost::bind ( + &RPCHTTPServerImp::processSession, this, boost::_1, + boost::ref (session))); #endif }