Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit d94d37f

Browse files
committed
Plug memory leak in index_get_partition
The list of indexes was being leaked when asked for an index that doesn't have an index partition in the table partition. Not a common case admittedly --and in most cases where it occurs, caller throws an error anyway-- but worth fixing for cleanliness and in case any third-party code is calling this function. While at it, remove use of lfirst_oid() to obtain a value we already have. Author: Justin Pryzby <pryzby@telsasoft.com> Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://postgr.es/m/20201105203606.GF22691@telsasoft.com
1 parent 6a7b55f commit d94d37f

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/backend/catalog/partition.c

+2-1
Original file line numberDiff line numberDiff line change
@@ -170,13 +170,14 @@ index_get_partition(Relation partition, Oid indexId)
170170
ReleaseSysCache(tup);
171171
if (!ispartition)
172172
continue;
173-
if (get_partition_parent(lfirst_oid(l)) == indexId)
173+
if (get_partition_parent(partIdx) == indexId)
174174
{
175175
list_free(idxlist);
176176
return partIdx;
177177
}
178178
}
179179

180+
list_free(idxlist);
180181
return InvalidOid;
181182
}
182183

0 commit comments

Comments
 (0)