summaryrefslogtreecommitdiff
path: root/src/basic/path-util.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2021-05-28 19:38:34 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2021-05-28 19:38:37 +0900
commit50fd596efcd0f556104a05ba2c6a35400ae989eb (patch)
treef46ec1733ff1f9fda0ffe815cabb98fa2f16c09a /src/basic/path-util.c
parent18503cac4104c83ec323920c44f1433edf82f773 (diff)
downloadsystemd-50fd596efcd0f556104a05ba2c6a35400ae989eb.tar.gz
path-util: add missing varargs cleanup
Fixes CID#1453293.
Diffstat (limited to 'src/basic/path-util.c')
-rw-r--r--src/basic/path-util.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/basic/path-util.c b/src/basic/path-util.c
index 2742a27672..82f3709042 100644
--- a/src/basic/path-util.c
+++ b/src/basic/path-util.c
@@ -577,12 +577,13 @@ char* path_extend_internal(char **x, ...) {
continue;
add = 1 + strlen(p);
- if (sz > SIZE_MAX - add) /* overflow check */
+ if (sz > SIZE_MAX - add) { /* overflow check */
+ va_end(ap);
return NULL;
+ }
sz += add;
}
-
va_end(ap);
nx = realloc(x ? *x : NULL, GREEDY_ALLOC_ROUND_UP(sz+1));