diff options
| author | scoder <none@none> | 2008-06-22 11:01:45 +0200 |
|---|---|---|
| committer | scoder <none@none> | 2008-06-22 11:01:45 +0200 |
| commit | b38a9ff8692ddc2439947fb9b579b5be7d9aff02 (patch) | |
| tree | c41b75f1fcd3821ea172c953780443c317ae716f /src/lxml/cssselect.py | |
| parent | b7bd33fc5b287a7c302803fe96f6c8ee746685eb (diff) | |
| download | python-lxml-b38a9ff8692ddc2439947fb9b579b5be7d9aff02.tar.gz | |
[svn r3852] r4545@delle: sbehnel | 2008-06-22 10:55:55 +0200
fix: cssselect parser skipped remaining expression after parsing function with parameters
--HG--
branch : trunk
Diffstat (limited to 'src/lxml/cssselect.py')
| -rw-r--r-- | src/lxml/cssselect.py | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/lxml/cssselect.py b/src/lxml/cssselect.py index 9e57843a..aba2b846 100644 --- a/src/lxml/cssselect.py +++ b/src/lxml/cssselect.py @@ -657,9 +657,9 @@ def parse_selector(stream): result = parse_simple_selector(stream) while 1: peek = stream.peek() - if peek == ',' or peek == ')' or peek is None: + if peek == ',' or peek is None: return result - if stream.peek() in ('+', '>', '~'): + elif peek in ('+', '>', '~'): # A combinator combinator = stream.next() else: @@ -728,11 +728,11 @@ def parse_simple_selector(stream): else: # FIXME: parse_simple_selector, or selector, or...? selector = parse_simple_selector(stream) - next = stream.next() - if not next == ')': - raise SelectorSyntaxError( - "Expected ), got %r and %r" - % (next, selector)) + next = stream.next() + if not next == ')': + raise SelectorSyntaxError( + "Expected ), got %r and %r" + % (next, selector)) result = Function(result, type, ident, selector) else: result = Pseudo(result, type, ident) |
