You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by bm...@apache.org on 2015/05/13 20:37:30 UTC

mesos git commit: Fixed the 'signalWrapper' non-POD.

Repository: mesos
Updated Branches:
  refs/heads/master 9db83273e -> 8e6df2a28


Fixed the 'signalWrapper' non-POD.

Review: https://reviews.apache.org/r/34016


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/8e6df2a2
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/8e6df2a2
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/8e6df2a2

Branch: refs/heads/master
Commit: 8e6df2a282769655548d7b2531b65b08df47ef5e
Parents: 9db8327
Author: haosdent huang <ha...@gmail.com>
Authored: Wed May 13 10:38:23 2015 -0700
Committer: Benjamin Mahler <be...@gmail.com>
Committed: Wed May 13 11:37:21 2015 -0700

----------------------------------------------------------------------
 src/slave/slave.cpp | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/8e6df2a2/src/slave/slave.cpp
----------------------------------------------------------------------
diff --git a/src/slave/slave.cpp b/src/slave/slave.cpp
index 1b17441..bd76a40 100644
--- a/src/slave/slave.cpp
+++ b/src/slave/slave.cpp
@@ -152,12 +152,14 @@ Slave::~Slave()
 }
 
 
-lambda::function<void(int, int)> signaledWrapper;
+lambda::function<void(int, int)>* signaledWrapper = NULL;
 
 
 static void signalHandler(int sig, siginfo_t* siginfo, void* context)
 {
-  signaledWrapper(sig, siginfo->si_uid);
+  if (signaledWrapper != NULL) {
+    (*signaledWrapper)(sig, siginfo->si_uid);
+  }
 }
 
 
@@ -514,7 +516,8 @@ void Slave::initialize()
   // the sa_sigaction field, not sa_handler.
   action.sa_flags = SA_SIGINFO;
 
-  signaledWrapper = defer(self(), &Slave::signaled, lambda::_1, lambda::_2);
+  signaledWrapper = new lambda::function<void(int, int)>(
+      defer(self(), &Slave::signaled, lambda::_1, lambda::_2));
 
   action.sa_sigaction = signalHandler;