##// END OF EJS Templates
persistent-nodemap: properly ignore non-existent `.nd` data file...
persistent-nodemap: properly ignore non-existent `.nd` data file This code was meant to handle the case of a nodemap docket file pointing to a nodemap data file that doesn’t exist (anymore), but most likely caused an `UnboundLocalError` exception instead when `data` was used on the next line without being defined. This case is theoretically possible with a race condition between two hg processes, but is hard to reproduce or test: * Process A reads a docket file and finds a UID in it that points to a given data file name. * Process B decides that this same data file needs compacting. It writes a new one with a different UID, overwrites the docket file, then removes the old data file. * Only then process A tries to a open a file that doesn’t exist anymore. Differential Revision: https://phab.mercurial-scm.org/D9533

File last commit:

r44516:7126d8b8 default
r46705:8ff2d835 default
Show More
hashutil.py
10 lines | 183 B | text/x-python | PythonLexer
from __future__ import absolute_import
import hashlib
try:
from ..thirdparty import sha1dc
sha1 = sha1dc.sha1
except (ImportError, AttributeError):
sha1 = hashlib.sha1