evolve: fix selection of changeset to evolve from the middle of a stack (issue4434)
The evolve algorithm picked a bad changesets to evolve (unstable changeset with
no obsolete parent (but unstable parent). And then get confused assuming that is
the first parent was not obsolete, the second should be.
This changeset fixed the issue by preventing selection of direct descendant of
[.] when evolving.
#!/usr/bin/env python
import os, time, errno, signal
# Kill off any leftover daemon processes
try:
fp = open(os.environ['DAEMON_PIDS'])
for line in fp:
try:
pid = int(line)
except ValueError:
continue
try:
os.kill(pid, 0)
os.kill(pid, signal.SIGTERM)
for i in range(10):
time.sleep(0.05)
os.kill(pid, 0)
os.kill(pid, signal.SIGKILL)
except OSError, err:
if err.errno != errno.ESRCH:
raise
fp.close()
except IOError:
pass