postgres.git / summary / log / commit / refs

commit    60a51c6b32960822d3987ea7d2816c65bdbcb314
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Thu Oct 29 00:17:34 2020 +0000
First released in: master (reverted before release)
Reverted by: e152506adef4 (in 14.0)

    Fix incorrect placement of pfree() in pg_relation_check_pages()
    
    This would cause the function to crash when more than one page is
    considered as broken and reported in the SRF.
    
    Reported-by: Noriyoshi Shinoda
    Discussion: https://postgr.es/m/TU4PR8401MB11523D42C315AAF822E74275EE170@TU4PR8401MB1152.NAMPRD84.PROD.OUTLOOK.COM


src/backend/utils/adt/pagefuncs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/adt/pagefuncs.c b/src/backend/utils/adt/pagefuncs.c index b6a23a2a4fa..368ada515cf 100644 --- a/src/backend/utils/adt/pagefuncs.c +++ b/src/backend/utils/adt/pagefuncs.c @@ -220,10 +220,10 @@ check_relation_fork(TupleDesc tupdesc, Tuplestorestate *tupstore, /* Save the corrupted blocks in the tuplestore. */ tuplestore_putvalues(tupstore, tupdesc, values, nulls); - - pfree(path); } + pfree(path); + /* Pop the error context stack */ error_context_stack = errcallback.previous; } [parent: b787d4ce6d91]