X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/927a991b71d9876995dd2beadee8d9ff16175a50..333700b34cb944ab49d1c9243f7193d50d25ebd1:/lib/wlrepo/mercurial_backend/document.py?ds=sidebyside

diff --git a/lib/wlrepo/mercurial_backend/document.py b/lib/wlrepo/mercurial_backend/document.py
index 3f94097a..a579fb75 100644
--- a/lib/wlrepo/mercurial_backend/document.py
+++ b/lib/wlrepo/mercurial_backend/document.py
@@ -50,6 +50,10 @@ class MercurialDocument(wlrepo.Document):
             
             ops(self._library, entry_path)
             message, user = commit_info(self)
+
+            message = self._library._sanitize_string(message)
+            user = self._library._sanitize_string(user)
+
             self._library._commit(message, user)
             try:
                 return self._library.document(docid=self.id, user=user)
@@ -98,15 +102,20 @@ class MercurialDocument(wlrepo.Document):
                 return (True, False)
             
             if self._revision.has_children():
+                print 'Update failed: has children.'
                 # can't update non-latest revision
                 return (False, False)
 
             sv = self.shared()
-            
-            if not sv.ancestorof(self) and not self.parentof(sv):
-                return self._revision.merge_with(sv._revision, user=user)
 
-            return (False, False)
+            if self.parentof(sv):
+                return (True, False)
+
+            if sv.ancestorof(self):
+                return (True, False)
+
+
+            return self._revision.merge_with(sv._revision, user=user)
         finally:
             lock.release()