mercurial/node.py
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Sun, 19 Oct 2008 01:26:46 +0200
changeset 7154 7fdf7a0a41b7
parent 4995 e45fc5d03798
child 8225 46293a0c7e9f
permissions -rw-r--r--
index parser: fix refcounting in case of errors, refactor due to incorrect refcounting, on a bad revlog it was failing with: *** glibc detected *** /usr/bin/python: corrupted double-linked list: 0x0816d318 *** and a backtrace.

"""
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.
"""

import binascii

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

# This ugly style has a noticeable effect in manifest parsing
hex = binascii.hexlify
bin = binascii.unhexlify

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