]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: return instead of exit(3) via preforker
authorSage Weil <sage@inktank.com>
Thu, 30 May 2013 00:54:17 +0000 (17:54 -0700)
committerSage Weil <sage@inktank.com>
Thu, 30 May 2013 18:17:04 +0000 (11:17 -0700)
This lets us run all the locally-scoped dtors so that leak checking will
work.

Signed-off-by: Sage Weil <sage@inktank.com>
src/ceph_mon.cc
src/common/Preforker.h

index 409aa45175ce357a933aa3773a897a3569ca94ca..1a83db1ce44a62558dbf12ec07bf815594c47d63 100644 (file)
@@ -543,6 +543,6 @@ int main(int argc, const char **argv)
     dout(0) << "ceph-mon: gmon.out should be in " << s << dendl;
   }
 
-  prefork.exit(0);
+  return prefork.exit(0);
 }
 
index bda5771d37b5eab1c993d94ad374854df3e92875..bf76e1891463c7f50c8a1b9b0c5c4a060be69134 100644 (file)
@@ -76,12 +76,12 @@ public:
     return r;
   }
 
-  void exit(int r) {
+  int exit(int r) {
     if (forked) {
       // tell parent
       (void)::write(fd[1], &r, sizeof(r));
     }
-    ::exit(r);
+    return r;
   }
 
   void daemonize() {