From 4b98d423d77682308423ed3c4470b741f08f7b23 Mon Sep 17 00:00:00 2001 From: Michael Meskes Date: Mon, 26 Jun 2006 14:12:02 +0000 Subject: [PATCH] Added missing braces to prevent a segfault after usage of an undeclared cursor. --- src/interfaces/ecpg/ChangeLog | 5 +++++ src/interfaces/ecpg/preproc/preproc.y | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog index 29f41b9e46..8196449cf4 100644 --- a/src/interfaces/ecpg/ChangeLog +++ b/src/interfaces/ecpg/ChangeLog @@ -2035,5 +2035,10 @@ Mo Jun 26 11:05:25 CEST 2006 - Added some more coverity report patches send in by Joachim Wieland . + +Mo Jun 26 16:08:23 CEST 2006 + + - Added missing braces to prevent a segfault after usage of an + undeclared cursor. - Set ecpg library version to 5.2. - Set ecpg version to 4.2.1. diff --git a/src/interfaces/ecpg/preproc/preproc.y b/src/interfaces/ecpg/preproc/preproc.y index 8e1ad2e81d..a005e71f28 100644 --- a/src/interfaces/ecpg/preproc/preproc.y +++ b/src/interfaces/ecpg/preproc/preproc.y @@ -1,4 +1,4 @@ -/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.324 2006/06/06 11:31:55 meskes Exp $ */ +/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.325 2006/06/26 14:12:02 meskes Exp $ */ /* Copyright comment */ %{ @@ -292,6 +292,7 @@ add_additional_variables(char *name, bool insert) mmerror(PARSE_ERROR, ET_ERROR, "trying to access an undeclared cursor %s\n", name); return NULL; } + if (insert) { /* add all those input variables that were given earlier @@ -837,9 +838,11 @@ stmt: AlterDatabaseStmt { output_statement($1, 0, connection); } struct cursor *ptr; if ((ptr = add_additional_variables($1, true)) != NULL) + { output_statement(mm_strdup(ptr->command), 0, ptr->connection ? mm_strdup(ptr->connection) : NULL); - ptr->opened = true; + ptr->opened = true; + } } | ECPGPrepare { -- 2.40.0