diff options
author | Benjamin Peterson <benjamin@python.org> | 2011-06-10 11:32:52 -0500 |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2011-06-10 11:32:52 -0500 |
commit | 43ee1a5d90df3181628fe03c67254aef1bb93f04 (patch) | |
tree | 61284455c0509a701366c5c745f7ca77667983b9 /Lib/netrc.py | |
parent | 2231e1a01fa2113fb26c62598fe1f5119fb91075 (diff) | |
download | cpython-git-43ee1a5d90df3181628fe03c67254aef1bb93f04.tar.gz |
fix regression in netrc comment handling (closes #12009)
Diffstat (limited to 'Lib/netrc.py')
-rw-r--r-- | Lib/netrc.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Lib/netrc.py b/Lib/netrc.py index 4caeb965fb..0fd37e304f 100644 --- a/Lib/netrc.py +++ b/Lib/netrc.py @@ -41,8 +41,12 @@ class netrc: if not tt: break elif tt[0] == '#': - fp.readline(); - continue; + # seek to beginning of comment, in case reading the token put + # us on a new line, and then skip the rest of the line. + pos = len(tt) + 1 + lexer.instream.seek(-pos, 1) + lexer.instream.readline() + continue elif tt == 'machine': entryname = lexer.get_token() elif tt == 'default': @@ -68,8 +72,8 @@ class netrc: self.hosts[entryname] = {} while 1: tt = lexer.get_token() - if (tt=='' or tt == 'machine' or - tt == 'default' or tt =='macdef'): + if (tt.startswith('#') or + tt in {'', 'machine', 'default', 'macdef'}): if password: self.hosts[entryname] = (login, account, password) lexer.push_token(tt) |