]> git.saurik.com Git - redis.git/blobdiff - src/redis.c
For coverage testing use exit() instead of _exit() when termiating saving children.
[redis.git] / src / redis.c
index 14812cf0832fa5bc6e3f6dbf2839402dfb235dba..c79f49d41a2909f12bd450f03c87bf254ffabf49 100644 (file)
@@ -354,6 +354,18 @@ long long mstime(void) {
     return ustime()/1000;
 }
 
+/* After an RDB dump or AOF rewrite we exit from children using _exit() instead of
+ * exit(), because the latter may interact with the same file objects used by
+ * the parent process. However if we are testing the coverage normal exit() is
+ * used in order to obtain the right coverage information. */
+void exitFromChild(int retcode) {
+#ifdef COVERAGE_TEST
+    exit(retcode);
+#else
+    _exit(retcode);
+#endif
+}
+
 /*====================== Hash table type implementation  ==================== */
 
 /* This is an hash table type that uses the SDS dynamic strings libary as