Split tables require the record index in the leftmost column.
defellipsis() correctly rejects "..." when the table doesn't have one.
It fails to reject it when it has one that is NSC_EXTRA, and thus not
permitted in a dump. This is the case for table sect. defellipsis()
happily succeeds, then chkflds() demands column "uid" if it's missing,
and rejects it if its present.
{
struct castr *ca = ef_cadef(cur_type);
{
struct castr *ca = ef_cadef(cur_type);
- if (ca[0].ca_table != cur_type)
+ if (ca[0].ca_table != cur_type || (ca[0].ca_flags & NSC_EXTRA))
return gripe("Table %s doesn't support ...", ef_nameof(cur_type));
ellipsis = is_partial = 1;
return 0;
return gripe("Table %s doesn't support ...", ef_nameof(cur_type));
ellipsis = is_partial = 1;
return 0;