summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2024-06-10 09:54:35 (GMT)
committerGitHub <noreply@github.com>2024-06-10 09:54:35 (GMT)
commitb90bd3e5bbc136f53b24ee791824acd6b17e0d42 (patch)
treeff226fec5d81d7694ca84558233a92e674cad3a3
parent4829522b8d3e1a28930f1cccfcc9635e035a0eb4 (diff)
downloadcpython-b90bd3e5bbc136f53b24ee791824acd6b17e0d42.zip
cpython-b90bd3e5bbc136f53b24ee791824acd6b17e0d42.tar.gz
cpython-b90bd3e5bbc136f53b24ee791824acd6b17e0d42.tar.bz2
gh-120155: Fix Coverity issue in zoneinfo load_data() (#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|
-rw-r--r--Modules/_zoneinfo.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Modules/_zoneinfo.c b/Modules/_zoneinfo.c
index 38c3f0c..902ece7 100644
--- a/Modules/_zoneinfo.c
+++ b/Modules/_zoneinfo.c
@@ -944,6 +944,7 @@ end:
static int
load_data(zoneinfo_state *state, PyZoneInfo_ZoneInfo *self, PyObject *file_obj)
{
+ int rv = 0;
PyObject *data_tuple = NULL;
long *utcoff = NULL;
@@ -1220,7 +1221,6 @@ load_data(zoneinfo_state *state, PyZoneInfo_ZoneInfo *self, PyObject *file_obj)
}
}
- int rv = 0;
goto cleanup;
error:
// These resources only need to be freed if we have failed, if we succeed