X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/352b8591bd1c7163835a6fa1db34d3e2861c1071..7f81e731d07fa4bdd37887b77c0438395155ec91:/lib/wlrepo/mercurial_backend/__init__.py?ds=sidebyside diff --git a/lib/wlrepo/mercurial_backend/__init__.py b/lib/wlrepo/mercurial_backend/__init__.py index 10a4cf8a..2d0ce828 100644 --- a/lib/wlrepo/mercurial_backend/__init__.py +++ b/lib/wlrepo/mercurial_backend/__init__.py @@ -5,8 +5,7 @@ __date__ = "$2009-09-25 09:20:22$" __doc__ = "Module documentation." import wlrepo - - +from mercurial.node import nullid class MercurialRevision(wlrepo.Revision): @@ -22,7 +21,7 @@ class MercurialRevision(wlrepo.Revision): idx = branchname.find("$doc:") if(idx < 0): raise ValueError("Revision %s is not a valid document revision." % changectx.hex()); - self._username = branchname[0:idx] + self._username = branchname[6:idx] self._docname = branchname[idx+5:] else: raise ValueError("Revision %s is not a valid document revision." % changectx.hex()); @@ -67,11 +66,15 @@ class MercurialRevision(wlrepo.Revision): return (a.branch() == self._changectx.branch()) def merge_with(self, other, user, message): - lock = self._library._lock(True) + lock = self._library.lock(True) try: self._library._checkout(self._changectx.node()) - self._library._merge(other._changectx.node()) - self._library._commit(user=user, message=message) + status = self._library._merge(other._changectx.node()) + if status.isclean(): + self._library._commit(user=user, message=message) + return (True, True) + else: + return (False, False) finally: lock.release()