Mercurial > hg
view tests/lockdelay.py @ 28686:b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Before this patch, rebase --continue would crash when trying to resume a rebase
of obsolete revisions whose successors were in the destination.
This patch adds logic to recompute the mapping when rebase is resumed. This
patch also adds a test that showcased the crash before the code change.
author | Laurent Charignon <lcharignon@fb.com> |
---|---|
date | Tue, 29 Mar 2016 11:50:41 -0700 |
parents | d493d64757eb |
children | a76d5ba7ac43 |
line wrap: on
line source
# Dummy extension that adds a delay after acquiring a lock. # # This extension can be used to test race conditions between lock acquisition. from __future__ import absolute_import import os import time from mercurial import ( lock as lockmod, ) class delaylock(lockmod.lock): def lock(self): delay = float(os.environ.get('HGPRELOCKDELAY', '0.0')) if delay: time.sleep(delay) res = super(delaylock, self).lock() delay = float(os.environ.get('HGPOSTLOCKDELAY', '0.0')) if delay: time.sleep(delay) return res def extsetup(ui): lockmod.lock = delaylock