summaryrefslogtreecommitdiff
path: root/sqlparse
diff options
context:
space:
mode:
Diffstat (limited to 'sqlparse')
-rw-r--r--sqlparse/filters.py6
-rw-r--r--sqlparse/lexer.py8
2 files changed, 12 insertions, 2 deletions
diff --git a/sqlparse/filters.py b/sqlparse/filters.py
index 7b9b5e7..9c0a476 100644
--- a/sqlparse/filters.py
+++ b/sqlparse/filters.py
@@ -271,7 +271,11 @@ class StripWhitespaceFilter:
[self.process(stack, sgroup, depth + 1)
for sgroup in stmt.get_sublists()]
self._stripws(stmt)
- if depth == 0 and stmt.tokens[-1].is_whitespace():
+ if (
+ depth == 0
+ and stmt.tokens
+ and stmt.tokens[-1].is_whitespace()
+ ):
stmt.tokens.pop(-1)
diff --git a/sqlparse/lexer.py b/sqlparse/lexer.py
index a60c789..3e9a1a6 100644
--- a/sqlparse/lexer.py
+++ b/sqlparse/lexer.py
@@ -315,7 +315,13 @@ class Lexer(object):
statestack.pop()
elif state == '#push':
statestack.append(statestack[-1])
- else:
+ elif (
+ # Ugly hack - multiline-comments
+ # are not stackable
+ state != 'multiline-comments'
+ or not statestack
+ or statestack[-1] != 'multiline-comments'
+ ):
statestack.append(state)
elif isinstance(new_state, int):
# pop