Applied the connect patch from HEAD.
authorMichael Meskes <meskes@postgresql.org>
Fri, 18 Aug 2006 16:00:06 +0000 (16:00 +0000)
committerMichael Meskes <meskes@postgresql.org>
Fri, 18 Aug 2006 16:00:06 +0000 (16:00 +0000)
src/interfaces/ecpg/preproc/preproc.y

index 327fd855df979d9a0cda1cdc5513139ea694d49e..f04cfb2ffd004f4c8b76c98ac9a782fb01e3ea81 100644 (file)
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.311.2.3 2006/06/26 14:12:42 meskes Exp $ */
+/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.311.2.4 2006/08/18 16:00:06 meskes Exp $ */
 
 /* Copyright comment */
 %{
@@ -4495,7 +4495,11 @@ connection_target: database_name opt_server opt_port
            if (strlen($2) > 0 && *($2) != '@')
                mmerror(PARSE_ERROR, ET_ERROR, "Expected '@', found '%s'", $2);
 
-           $$ = make3_str(make_str("\""), make3_str($1, $2, $3), make_str("\""));
+           /* C strings need to be handled differently */
+                        if ($1[0] == '\"')
+               $$ = $1;
+           else
+               $$ = make3_str(make_str("\""), make3_str($1, $2, $3), make_str("\""));
        }
        |  db_prefix ':' server opt_port '/' database_name opt_options
        {
@@ -4513,13 +4517,6 @@ connection_target: database_name opt_server opt_port
 
            $$ = make3_str(make3_str(make_str("\""), $1, make_str(":")), $3, make3_str(make3_str($4, make_str("/"), $6),    $7, make_str("\"")));
        }
-       | Sconst
-       {
-           if ($1[0] == '\"')
-               $$ = $1;
-           else
-               $$ = make3_str(make_str("\""), $1, make_str("\""));
-       }
        | char_variable
        {
            $$ = $1;