mirror of
https://github.com/postgres/postgres.git
synced 2025-05-29 16:21:20 +03:00
Cope with indicator arrays that do not have the correct length.
Patch by: "Rader, David" <davidr@openscg.com>
This commit is contained in:
parent
4e71700584
commit
a0f5890a64
@ -560,7 +560,17 @@ ECPGdump_a_struct(FILE *o, const char *name, const char *ind_name, char *arrsiz,
|
||||
prefix, ind_prefix, arrsiz, type->struct_sizeof,
|
||||
(ind_p != NULL) ? ind_type->struct_sizeof : NULL);
|
||||
if (ind_p != NULL && ind_p != &struct_no_indicator)
|
||||
{
|
||||
ind_p = ind_p->next;
|
||||
if (ind_p == NULL && p->next != NULL) {
|
||||
mmerror(PARSE_ERROR, ET_WARNING, "indicator struct \"%s\" has too few members", ind_name);
|
||||
ind_p = &struct_no_indicator;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (ind_type != NULL && ind_p != NULL && ind_p != &struct_no_indicator) {
|
||||
mmerror(PARSE_ERROR, ET_WARNING, "indicator struct \"%s\" has too many members", ind_name);
|
||||
}
|
||||
|
||||
free(pbuf);
|
||||
|
Loading…
x
Reference in New Issue
Block a user