• Tom Lane's avatar
    Avoid double-free in vacuumlo error path. · bd9396a0
    Tom Lane authored
    The code would do "PQclear(res)" twice if lo_unlink failed, evidently
    due to careless thinking about how far out a "break" would break.
    Remove the extra PQclear and adjust the loop logic so that we'll fall
    out of both levels of loop after an error, as was clearly the intent.
    
    Spotted by Coverity.  I have no idea why it took this long to notice,
    since the bug has been there since commit 67ccbb08.  Accordingly,
    back-patch to all supported branches.
    bd9396a0
vacuumlo.c 13.9 KB