[3.13] gh-120155: Fix Coverity issue in zoneinfo load_data() (GH-120232) (#120310)

gh-120155: Fix Coverity issue in zoneinfo load_data() (GH-120232)

Declare the 'rv' varaible at the top of the load_data() function to
make sure that it's initialized before the first 'goto error' which
uses 'rv' (return rv).

Fix the Coverity issue:

Error: UNINIT (CWE-457):
Python-3.12.2/Modules/_zoneinfo.c:1233:5: skipped_decl: Jumping over declaration of ""rv"".
Python-3.12.2/Modules/_zoneinfo.c:1284:5: uninit_use: Using uninitialized value ""rv"".
  1282|       }
  1283|
  1284|->     return rv;
  1285|   }
  1286|
(cherry picked from commit b90bd3e5bb)

Co-authored-by: Victor Stinner <vstinner@python.org>
This commit is contained in:
Miss Islington (bot) 2024-06-10 12:18:18 +02:00 committed by GitHub
parent 03cd44759f
commit 14ff4c979c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 1 additions and 1 deletions

View File

@ -944,6 +944,7 @@ end:
static int static int
load_data(zoneinfo_state *state, PyZoneInfo_ZoneInfo *self, PyObject *file_obj) load_data(zoneinfo_state *state, PyZoneInfo_ZoneInfo *self, PyObject *file_obj)
{ {
int rv = 0;
PyObject *data_tuple = NULL; PyObject *data_tuple = NULL;
long *utcoff = NULL; long *utcoff = NULL;
@ -1220,7 +1221,6 @@ load_data(zoneinfo_state *state, PyZoneInfo_ZoneInfo *self, PyObject *file_obj)
} }
} }
int rv = 0;
goto cleanup; goto cleanup;
error: error:
// These resources only need to be freed if we have failed, if we succeed // These resources only need to be freed if we have failed, if we succeed