From 6c7b89cc8ddbe3159befb4616b70384bf491a29e Mon Sep 17 00:00:00 2001 From: Fredy Wijaya Date: Wed, 21 Nov 2018 18:05:53 -0600 Subject: Fix issue with strip_comments causing a syntax error (fixes #425) --- sqlparse/filters/others.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'sqlparse') diff --git a/sqlparse/filters/others.py b/sqlparse/filters/others.py index df4d861..b0bb898 100644 --- a/sqlparse/filters/others.py +++ b/sqlparse/filters/others.py @@ -26,6 +26,13 @@ class StripCommentsFilter(object): if (prev_ is None or next_ is None or prev_.is_whitespace or prev_.match(T.Punctuation, '(') or next_.is_whitespace or next_.match(T.Punctuation, ')')): + # Insert a whitespace to ensure the following SQL produces + # a valid SQL. For example: + # + # Before: select a--comment\nfrom foo + # After: select a from foo + if prev_ is not None and next_ is None: + tlist.tokens.insert(tidx, sql.Token(T.Whitespace, ' ')) tlist.tokens.remove(token) else: tlist.tokens[tidx] = sql.Token(T.Whitespace, ' ') -- cgit v1.2.1