Don't prematurely cram a value into a short int.

Since a4d75c86b, some buildfarm members have been warning that
		Assert(attnum <= MaxAttrNumber);
is useless if attnum is an AttrNumber.  I'm not certain how plausible
it is that the value coming out of the bitmap could actually exceed
MaxAttrNumber, but we seem to have thought that that was possible back
in 7300a6995.  Revert the intermediate variable to int so that we have
the same overflow protection as before.
pull/64/head
Tom Lane 5 years ago
parent 3b0c647bbf
commit c545e9524d
  1. 2
      src/backend/statistics/extended_stats.c

@ -978,7 +978,7 @@ build_attnums_array(Bitmapset *attrs, int nexprs, int *numattrs)
j = -1;
while ((j = bms_next_member(attrs, j)) >= 0)
{
AttrNumber attnum = (j - nexprs);
int attnum = (j - nexprs);
/*
* Make sure the bitmap contains only user-defined attributes. As

Loading…
Cancel
Save