projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: missing varargs cleanup on error
[lttng-tools.git]
/
src
/
common
/
config
/
config.c
diff --git
a/src/common/config/config.c
b/src/common/config/config.c
index 5e100a7ab6c9c6e66848f5010acc711ffba51b8d..c952e8ba29180b4164638802b486c22244b0dd95 100644
(file)
--- a/
src/common/config/config.c
+++ b/
src/common/config/config.c
@@
-540,11
+540,11
@@
void xml_error_handler(void *ctx, const char *format, ...)
va_start(args, format);
ret = vasprintf(&errMsg, format, args);
va_start(args, format);
ret = vasprintf(&errMsg, format, args);
+ va_end(args);
if (ret == -1) {
ERR("String allocation failed in xml error handler");
return;
}
if (ret == -1) {
ERR("String allocation failed in xml error handler");
return;
}
- va_end(args);
fprintf(stderr, "XML Error: %s", errMsg);
free(errMsg);
fprintf(stderr, "XML Error: %s", errMsg);
free(errMsg);
@@
-1238,7
+1238,7
@@
int create_session(const char *name,
goto end;
}
goto end;
}
- for (i = 0; i < (sizeof(domains) / sizeof(
*domain
)); i++) {
+ for (i = 0; i < (sizeof(domains) / sizeof(
domains[0]
)); i++) {
domain = domains[i];
if (!domain) {
continue;
domain = domains[i];
if (!domain) {
continue;
@@
-2198,12
+2198,24
@@
int process_session_node(xmlNodePtr session_node, const char *session_name,
switch (domain->type) {
case LTTNG_DOMAIN_KERNEL:
switch (domain->type) {
case LTTNG_DOMAIN_KERNEL:
+ if (kernel_domain) {
+ /* Same domain seen twice, invalid! */
+ goto domain_init_error;
+ }
kernel_domain = domain;
break;
case LTTNG_DOMAIN_UST:
kernel_domain = domain;
break;
case LTTNG_DOMAIN_UST:
+ if (ust_domain) {
+ /* Same domain seen twice, invalid! */
+ goto domain_init_error;
+ }
ust_domain = domain;
break;
case LTTNG_DOMAIN_JUL:
ust_domain = domain;
break;
case LTTNG_DOMAIN_JUL:
+ if (jul_domain) {
+ /* Same domain seen twice, invalid! */
+ goto domain_init_error;
+ }
jul_domain = domain;
break;
default:
jul_domain = domain;
break;
default:
This page took
0.024392 seconds
and
4
git commands to generate.