From 51e7bacb8bd14729c0e9da343e5403b4a57efd74 Mon Sep 17 00:00:00 2001
From: Marijn Haverbeke <marijn@haverbeke.nl>
Date: Fri, 19 Aug 2016 23:11:03 +0200
Subject: [PATCH] [sas mode] Properly fix string tokenizing

Issue #4178
---
 mode/sas/sas.js | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/mode/sas/sas.js b/mode/sas/sas.js
index e88744be2..9ec22d5fa 100755
--- a/mode/sas/sas.js
+++ b/mode/sas/sas.js
@@ -137,11 +137,13 @@
           stream.next();
           return 'comment';
         }
-      } else if (ch === '"' || ch === "'") {
-        state.continueString = state.continueString == ch ? null : ch
+      } else if ((ch === '"' || ch === "'") && !state.continueString) {
+        state.continueString = ch
         return "string"
-      } else if (state.continueString !== null) {
-        if (stream.skipTo(state.continueString)) {
+      } else if (state.continueString) {
+        if (state.continueString == ch) {
+          state.continueString = null;
+        } else if (stream.skipTo(state.continueString)) {
           // quote found on this line
           stream.next();
           state.continueString = null;
-- 
GitLab