mercurial/node.py
author Thomas Arendsen Hein <thomas@intevation.de>
Sat, 27 Jan 2007 23:07:06 +0100
changeset 4375 11dc22eb8e8d
parent 3578 3b4e00cba57a
child 3886 abaee83ce0a6
permissions -rw-r--r--
Fix segfaults when parsing bdiff hunks in mpatch.decode() and .patchedsize() - fix off by 11 when checking if there are more hunks (found by Maris Fogels) - bail out if start is greater than end - check if new hunk starts after start/end/len block of current hunk as the pointer can wrap around on very large values, reproducible with import mpatch; mpatch.patchedsize(12, 'x'*12)

"""
node.py - basic nodeid manipulation for mercurial

Copyright 2005, 2006 Matt Mackall <mpm@selenic.com>

This software may be used and distributed according to the terms
of the GNU General Public License, incorporated herein by reference.
"""

from demandload import demandload
demandload(globals(), "binascii")

nullrev = -1
nullid = "\0" * 20

def hex(node):
    return binascii.hexlify(node)

def bin(node):
    return binascii.unhexlify(node)

def short(node):
    return hex(node[:6])