[PATCH 2 of 2] patch from David.Eckhardt at cs.cmu.edu to support factotum passwords with single quotes
Jeff Sickel
jas at buf.io
Mon Nov 24 16:44:24 UTC 2014
# HG changeset patch
# User Jeff Sickel <jas at corpus-callosum.com>
# Date 1416848986 21600
# Mon Nov 24 11:09:46 2014 -0600
# Branch stable
# Node ID 4b390095b93ba15beee48cf4394cde0014b66bcd
# Parent 8913ec66bd1e4c9dd7f4f50c96e8d6d0e3dd963a
patch from David.Eckhardt at cs.cmu.edu to support factotum passwords with single quotes
diff -r 8913ec66bd1e -r 4b390095b93b hgext/factotum.py
--- a/hgext/factotum.py Mon Nov 24 11:00:58 2014 -0600
+++ b/hgext/factotum.py Mon Nov 24 11:09:46 2014 -0600
@@ -72,9 +72,14 @@
l = os.read(fd, ERRMAX).split()
if l[0] == 'ok':
os.write(fd, 'read')
- l = os.read(fd, ERRMAX).split()
- if l[0] == 'ok':
- return l[1:]
+ status, user, passwd = os.read(fd, ERRMAX).split(None,2)
+ if status == 'ok':
+ if passwd.startswith("'"):
+ if passwd.endswith("'"):
+ passwd = passwd[1:len(passwd)-1].replace("''","'")
+ else:
+ raise util.Abort(_('malformed password string'))
+ return (user, passwd)
except (OSError, IOError):
raise util.Abort(_('factotum not responding'))
finally:
More information about the Mercurial-devel
mailing list