aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/gin/gininsert.c
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-03-24 18:40:26 +0200
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-03-24 18:44:40 +0200
commitbb42e21be274a71f6868ce2fc8fae2c15c3ecf66 (patch)
tree63cebcd2886c1b73f52c0f169fdbe0738ce30248 /src/backend/access/gin/gininsert.c
parentcf5d38f4b9bcdf035c46ca8b3e5442557a21ef34 (diff)
downloadpostgresql-bb42e21be274a71f6868ce2fc8fae2c15c3ecf66.tar.gz
postgresql-bb42e21be274a71f6868ce2fc8fae2c15c3ecf66.zip
Change ginMergeItemPointers to return a palloc'd array.
That seems nicer than making it the caller's responsibility to pass a suitable-sized array. All the callers were just palloc'ing an array anyway.
Diffstat (limited to 'src/backend/access/gin/gininsert.c')
-rw-r--r--src/backend/access/gin/gininsert.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/backend/access/gin/gininsert.c b/src/backend/access/gin/gininsert.c
index cd9c7c120b3..3bafb6471b3 100644
--- a/src/backend/access/gin/gininsert.c
+++ b/src/backend/access/gin/gininsert.c
@@ -67,12 +67,9 @@ addItemPointersToLeafTuple(GinState *ginstate,
/* merge the old and new posting lists */
oldItems = ginReadTuple(ginstate, attnum, old, &oldNPosting);
- newNPosting = oldNPosting + nitem;
- newItems = (ItemPointerData *) palloc(sizeof(ItemPointerData) * newNPosting);
-
- newNPosting = ginMergeItemPointers(newItems,
- items, nitem,
- oldItems, oldNPosting);
+ newItems = ginMergeItemPointers(items, nitem,
+ oldItems, oldNPosting,
+ &newNPosting);
/* Compress the posting list, and try to a build tuple with room for it */
res = NULL;