Add an ASSERT_LOCKED(lock) macro
[lttng-tools.git] / src / common / uri.c
index 58ffcbcd66de518c8fba4ee4c470609af5ec8491..7fe4dd3b30af4796a855fb28cb83f5f4fca827ce 100644 (file)
@@ -587,6 +587,10 @@ ssize_t uri_parse_str_urls(const char *ctrl_url, const char *data_url,
                if (ret < 0) {
                        PERROR("snprintf file url");
                        goto parse_error;
+               } else if (ret >= sizeof(url)) {
+                       PERROR("snprintf file url is too long");
+                       goto parse_error;
+
                }
                ctrl_url = url;
        }
@@ -604,7 +608,7 @@ ssize_t uri_parse_str_urls(const char *ctrl_url, const char *data_url,
 
                if (ctrl_uris[0].dtype == LTTNG_DST_PATH &&
                                (data_url && *data_url != '\0')) {
-                       ERR("Can not have a data URL when destination is file://");
+                       ERR("Cannot have a data URL when destination is file://");
                        goto error;
                }
 
@@ -640,10 +644,12 @@ ssize_t uri_parse_str_urls(const char *ctrl_url, const char *data_url,
 
                set_default_uri_attr(&data_uris[0], LTTNG_STREAM_DATA);
 
-               ret = compare_destination(&ctrl_uris[0], &data_uris[0]);
-               if (ret != 0) {
-                       ERR("Control and data destination mismatch");
-                       goto error;
+               if (ctrl_uris) {
+                       ret = compare_destination(&ctrl_uris[0], &data_uris[0]);
+                       if (ret != 0) {
+                               ERR("Control and data destination mismatch");
+                               goto error;
+                       }
                }
        }
 
This page took 0.023915 seconds and 4 git commands to generate.