pg_upgrade: Fix memory leak in check_for_unicode_update().

This function was initializing the "task" variable before a couple
of early returns.  To fix, postpone the initialization until just
before it's needed.

Per Coverity.

Discussion: https://postgr.es/m/Z_KMsUH2-FEbiNjC%40nathan
pull/210/head
Nathan Bossart 5 months ago
parent 57dec20fd4
commit de48056ec7
  1. 3
      src/bin/pg_upgrade/check.c

@ -1825,7 +1825,7 @@ static void
check_for_unicode_update(ClusterInfo *cluster)
{
UpgradeTaskReport report;
UpgradeTask *task = upgrade_task_create();
UpgradeTask *task;
const char *query;
/*
@ -1920,6 +1920,7 @@ check_for_unicode_update(ClusterInfo *cluster)
" d.datname = current_database() AND "
" d.encoding = pg_char_to_encoding('UTF8');";
task = upgrade_task_create();
upgrade_task_add_step(task, query,
process_unicode_update,
true, &report);

Loading…
Cancel
Save