From d12561040cf63a87f16c98782c1dd195edc9827c Mon Sep 17 00:00:00 2001
From: Michael Meskes <meskes@postgresql.org>
Date: Thu, 24 Jun 1999 13:15:31 +0000
Subject: [PATCH] *** empty log message ***

---
 src/interfaces/ecpg/ChangeLog     | 4 ++++
 src/interfaces/ecpg/preproc/pgc.l | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog
index 52b148951e8..780cea362f7 100644
--- a/src/interfaces/ecpg/ChangeLog
+++ b/src/interfaces/ecpg/ChangeLog
@@ -599,5 +599,9 @@ Thu Jun 10 21:09:12 CEST 1999
 Wed Jun 16 20:21:42 CEST 1999
 
 	- Fixed another typo in preproc.y.
+
+Thu Jun 24 18:06:43 CEST 1999
+
+	- Fixed C comment bug that caused ecpg to not accept quoted quotes.
 	- Set library version to 3.0.0
 	- Set ecpg version to 2.6.0
diff --git a/src/interfaces/ecpg/preproc/pgc.l b/src/interfaces/ecpg/preproc/pgc.l
index d942a65b3ea..071dc4731d0 100644
--- a/src/interfaces/ecpg/preproc/pgc.l
+++ b/src/interfaces/ecpg/preproc/pgc.l
@@ -119,7 +119,9 @@ xqcat			{quote}{space}*\n{space}*{quote}
 dquote			\"
 xdstart			{dquote}
 xdstop			{dquote}
+xdcqdq			\\\"
 xdinside		[^"]*
+xdcinside		({xdinside}|{xdcqdq})*
 
 /* Comments
  * Ignored by the scanner and parser.
@@ -287,7 +289,7 @@ cppline		{space}*#.*(\\{space}*\n)*\n*
 					yylval.str = mm_strdup(literal);
 					return CSTRING;
 				}
-<xdc>{xdinside}	{
+<xdc>{xdcinside}	{
 					if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1))
 						yyerror("ERROR: quoted string parse buffer exceeded");
 					memcpy(literal+llen, yytext, yyleng+1);
-- 
GitLab