From: Michael Meskes Date: Mon, 10 May 2004 13:46:39 +0000 (+0000) Subject: Just another bug in adjust_informix. X-Git-Tag: REL7_4_3~32 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=006987781d64b24b97919474c8b3dd06f29e2373;p=postgresql Just another bug in adjust_informix. --- diff --git a/src/interfaces/ecpg/preproc/preproc.y b/src/interfaces/ecpg/preproc/preproc.y index 51a6824a79..afa0aaed47 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.263.2.12 2004/05/07 13:43:29 meskes Exp $ */ +/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.263.2.13 2004/05/10 13:46:39 meskes Exp $ */ /* Copyright comment */ %{ @@ -209,7 +209,7 @@ adjust_informix(struct arguments *list) original_var = ptr->variable->name; sprintf(temp, "%d))", ecpg_informix_var); - if (atoi(ptr->variable->type->size) > 1) + if ((ptr->variable->type->type != ECPGt_char && ptr->variable->type->type != ECPGt_unsigned_char) && atoi(ptr->variable->type->size) > 1) { ptr->variable = new_variable(cat_str(4, make_str("("), mm_strdup(ECPGtype_name(ptr->variable->type->u.element->type)), make_str(" *)(ECPG_informix_get_var("), mm_strdup(temp)), ECPGmake_array_type(ECPGmake_simple_type(ptr->variable->type->u.element->type, make_str("1")), ptr->variable->type->size), 0); sprintf(temp, "%d, (", ecpg_informix_var++);