Commit 388008cd authored by Michael Meskes's avatar Michael Meskes

Fixed dumping of structs without indicators.

parent b7579d62
......@@ -1150,5 +1150,9 @@ Fri Nov 2 16:16:25 CET 2001
Wed Nov 14 11:50:27 CET 2001
- Added several patches by Christof Petig <christof.petig@wtal.de>.
Tue Dec 4 13:30:32 CET 2001
- Fixed dumping of structures without indicators.
- Set ecpg version to 2.9.0.
- Set library version to 3.3.0.
......@@ -2,6 +2,8 @@
#include "extern.h"
struct ECPGstruct_member struct_no_indicator = {"no_indicator", &ecpg_no_indicator, NULL};
/* malloc + error check */
void *
mm_alloc(size_t size)
......@@ -374,15 +376,21 @@ ECPGdump_a_struct(FILE *o, const char *name, const char *ind_name, long arrsiz,
sprintf(pbuf, "%s%s.", prefix ? prefix : "", name);
prefix = pbuf;
sprintf(ind_pbuf, "%s%s.", ind_prefix ? ind_prefix : "", ind_name);
ind_prefix = ind_pbuf;
if (ind_typ != NULL)
if (ind_typ == &ecpg_no_indicator)
{
ind_p = &struct_no_indicator;
}
else if (ind_typ != NULL)
{
sprintf(ind_pbuf, "%s%s.", ind_prefix ? ind_prefix : "", ind_name);
ind_prefix = ind_pbuf;
ind_p = ind_typ->u.members;
}
for (p = typ->u.members; p; p = p->next)
{
ECPGdump_a_type(o, p->name, p->typ, (ind_p != NULL) ? ind_p->name : NULL, (ind_p != NULL) ? ind_p->typ : NULL, prefix, ind_prefix);
if (ind_p != NULL)
if (ind_p != NULL && ind_p != &struct_no_indicator)
ind_p = ind_p->next;
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment