diff -r ae7a614a6a57 -r 7197812e8d44 mercurial/error.py --- a/mercurial/error.py Mon Jan 12 10:59:08 2009 -0600 +++ b/mercurial/error.py Mon Jan 12 11:09:14 2009 -0600 @@ -33,3 +33,16 @@ class CapabilityError(RepoError): pass + +class LockError(IOError): + def __init__(self, errno, strerror, filename, desc): + IOError.__init__(self, errno, strerror, filename) + self.desc = desc + +class LockHeld(LockError): + def __init__(self, errno, filename, desc, locker): + LockError.__init__(self, errno, 'Lock held', filename, desc) + self.locker = locker + +class LockUnavailable(LockError): + pass