The unified diff between revisions [9b09f962..] and [7d6f1f74..] is displayed below. It can also be downloaded as a raw diff.
#
#
# patch "on_the_fly.py"
# from [92f24cea06bdafa8ca0793431548d6bbee0fee36]
# to [d811ac67ff4a3b23b948e8e7deaa50a3b3b9de3a]
#
============================================================
--- on_the_fly.py 92f24cea06bdafa8ca0793431548d6bbee0fee36
+++ on_the_fly.py d811ac67ff4a3b23b948e8e7deaa50a3b3b9de3a
@@ -8,7 +8,7 @@ from popen2 import Popen3
from os import environ, fork, WEXITSTATUS, WIFSIGNALED, WIFEXITED, WTERMSIG
import os
from popen2 import Popen3
-from signal import SIGTERM, SIGKILL
+from signal import SIGTERM, SIGKILL, SIGCHLD, signal
from time import sleep
from basic_io import basic_io_parser
@@ -167,6 +167,8 @@ def cert_leaf_revs(db, graph, frontier,
for i in range(revs_per_ns):
cert_leaf_rev(db, graph, frontier, parent_deps)
+ if not len(frontier):
+ break
def serve(db, branch):
@@ -207,6 +209,13 @@ def serve_pull(serve_db, pull_db):
os.kill(pid, SIGKILL)
+ # mmm. zombies.
+ while True:
+ try:
+ os.waitpid(-1, os.WNOHANG)
+ except OSError:
+ break
+
def fresh_db(db):
monotone(db, "db init")