One code path forgot to free the separately-malloc'd filename
part of a struct rfile. Another place freed the filename but
forgot the struct rfile itself. These seem worth fixing because
with a large backup we could be dealing with many files.
Coverity found the bug in make_rfile(). I found the other one
by manual inspection.
if (s->relative_block_numbers != NULL)
pfree(s->relative_block_numbers);
pg_free(s->filename);
+ pg_free(s);
}
pfree(sourcemap);
pfree(offsetmap);
{
if (missing_ok && errno == ENOENT)
{
+ pg_free(rf->filename);
pg_free(rf);
return NULL;
}