summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatth?us G. Chajdas <dev@anteru.net>2019-01-04 15:07:51 +0100
committerMatth?us G. Chajdas <dev@anteru.net>2019-01-04 15:07:51 +0100
commit5aa7fd79de2d137fb77cc60410b831312a7908aa (patch)
tree7c91083e7932f75bc00f24cafe4fef1331446dea
parent739365558e04bc7bdc67fc522b47f5baa1259d74 (diff)
downloadpygments-5aa7fd79de2d137fb77cc60410b831312a7908aa.tar.gz
Fix a small bug in the SQL analysis.
Updated CHANGES as well, and moved the LLVM PR to the right list.
-rw-r--r--CHANGES3
-rw-r--r--pygments/lexers/sql.py10
2 files changed, 10 insertions, 3 deletions
diff --git a/CHANGES b/CHANGES
index a27baeec..eba251c6 100644
--- a/CHANGES
+++ b/CHANGES
@@ -14,11 +14,12 @@ Version 2.4.0
* FloScript (PR#750)
* Hspec (PR#790)
- * LLVM (PR#792)
* Slurm (PR#760)
- Updated lexers:
+ * LLVM (PR#792)
+ * SQL (PR#672)
* Stan (PR#774)
* Terraform (PR#787)
diff --git a/pygments/lexers/sql.py b/pygments/lexers/sql.py
index d3bc8e23..8884db22 100644
--- a/pygments/lexers/sql.py
+++ b/pygments/lexers/sql.py
@@ -550,7 +550,11 @@ class TransactSqlLexer(RegexLexer):
name_between_backtick_re.findall((text)))
name_between_bracket_count = len(
name_between_bracket_re.findall(text))
- if name_between_bracket_count >= 2 * name_between_backtick_count:
+ # We need to check if there are any names using
+ # backticks or brackets, as otherwise both are 0
+ # and 0 >= 2 * 0, so we would always assume it's true
+ dialect_name_count = name_between_backtick_count + name_between_bracket_count
+ if dialect_name_count >= 1 and name_between_bracket_count >= 2 * name_between_backtick_count:
# Found at least twice as many [name] as `name`.
rating += 0.5
elif name_between_bracket_count > name_between_backtick_count:
@@ -642,7 +646,9 @@ class MySqlLexer(RegexLexer):
name_between_backtick_re.findall((text)))
name_between_bracket_count = len(
name_between_bracket_re.findall(text))
- if name_between_backtick_count >= 2 * name_between_bracket_count:
+ # Same logic as above in the TSQL analysis
+ dialect_name_count = name_between_backtick_count + name_between_bracket_count
+ if dialect_name_count >= 1 and name_between_backtick_count >= 2 * name_between_bracket_count:
# Found at least twice as many `name` as [name].
rating += 0.5
elif name_between_backtick_count > name_between_bracket_count: