summaryrefslogtreecommitdiff
path: root/contrib/hstore
diff options
context:
space:
mode:
authorAndres Freund2017-08-20 18:19:07 +0000
committerAndres Freund2017-08-20 18:19:07 +0000
commit2cd70845240087da205695baedab6412342d1dbe (patch)
tree20a3b6a2231dae248218ac54983c7a854328265f /contrib/hstore
parentb1c2d76a2fcef812af0be3343082414d401909c8 (diff)
Change tupledesc->attrs[n] to TupleDescAttr(tupledesc, n).
This is a mechanical change in preparation for a later commit that will change the layout of TupleDesc. Introducing a macro to abstract the details of where attributes are stored will allow us to change that in separate step and revise it in future. Author: Thomas Munro, editorialized by Andres Freund Reviewed-By: Andres Freund Discussion: https://postgr.es/m/CAEepm=0ZtQ-SpsgCyzzYpsXS6e=kZWqk3g5Ygn3MDV7A8dabUA@mail.gmail.com
Diffstat (limited to 'contrib/hstore')
-rw-r--r--contrib/hstore/hstore_io.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/contrib/hstore/hstore_io.c b/contrib/hstore/hstore_io.c
index e03005c9232..a44c1b22353 100644
--- a/contrib/hstore/hstore_io.c
+++ b/contrib/hstore/hstore_io.c
@@ -855,15 +855,16 @@ hstore_from_record(PG_FUNCTION_ARGS)
for (i = 0, j = 0; i < ncolumns; ++i)
{
ColumnIOData *column_info = &my_extra->columns[i];
- Oid column_type = tupdesc->attrs[i]->atttypid;
+ Form_pg_attribute att = TupleDescAttr(tupdesc, i);
+ Oid column_type = att->atttypid;
char *value;
/* Ignore dropped columns in datatype */
- if (tupdesc->attrs[i]->attisdropped)
+ if (att->attisdropped)
continue;
- pairs[j].key = NameStr(tupdesc->attrs[i]->attname);
- pairs[j].keylen = hstoreCheckKeyLen(strlen(NameStr(tupdesc->attrs[i]->attname)));
+ pairs[j].key = NameStr(att->attname);
+ pairs[j].keylen = hstoreCheckKeyLen(strlen(NameStr(att->attname)));
if (!nulls || nulls[i])
{
@@ -1034,21 +1035,22 @@ hstore_populate_record(PG_FUNCTION_ARGS)
for (i = 0; i < ncolumns; ++i)
{
ColumnIOData *column_info = &my_extra->columns[i];
- Oid column_type = tupdesc->attrs[i]->atttypid;
+ Form_pg_attribute att = TupleDescAttr(tupdesc, i);
+ Oid column_type = att->atttypid;
char *value;
int idx;
int vallen;
/* Ignore dropped columns in datatype */
- if (tupdesc->attrs[i]->attisdropped)
+ if (att->attisdropped)
{
nulls[i] = true;
continue;
}
idx = hstoreFindKey(hs, 0,
- NameStr(tupdesc->attrs[i]->attname),
- strlen(NameStr(tupdesc->attrs[i]->attname)));
+ NameStr(att->attname),
+ strlen(NameStr(att->attname)));
/*
* we can't just skip here if the key wasn't found since we might have
@@ -1082,7 +1084,7 @@ hstore_populate_record(PG_FUNCTION_ARGS)
*/
values[i] = InputFunctionCall(&column_info->proc, NULL,
column_info->typioparam,
- tupdesc->attrs[i]->atttypmod);
+ att->atttypmod);
nulls[i] = true;
}
else
@@ -1094,7 +1096,7 @@ hstore_populate_record(PG_FUNCTION_ARGS)
values[i] = InputFunctionCall(&column_info->proc, value,
column_info->typioparam,
- tupdesc->attrs[i]->atttypmod);
+ att->atttypmod);
nulls[i] = false;
}
}