Fix: test presence of override_attr before accessing its member
[lttng-tools.git] / src / lib / lttng-ctl / load.c
index 0bebdc094514cdd48d651a6f666b006dfe1cc8d2..f89effed04b8b69b23e186dfee6237e8b8cfe10d 100644 (file)
@@ -89,27 +89,17 @@ int lttng_load_session_attr_get_overwrite(
        return attr ? attr->overwrite : -LTTNG_ERR_INVALID;
 }
 
-const char *lttng_load_session_attr_get_override_path_url(
-       struct lttng_load_session_attr *attr)
-{
-       const char *ret = NULL;
-
-       if (attr && attr->override_attr->path_url) {
-               ret = attr->raw_override_path_url;
-       }
-
-       return ret;
-}
-
 const char *lttng_load_session_attr_get_override_ctrl_url(
        struct lttng_load_session_attr *attr)
 {
        const char *ret = NULL;
 
-       if (attr && attr->override_attr->ctrl_url) {
-               ret = attr->raw_override_ctrl_url;
+       if (!attr || !attr->override_attr) {
+               goto end;
        }
 
+       ret = attr->raw_override_ctrl_url;
+end:
        return ret;
 }
 
@@ -118,10 +108,12 @@ const char *lttng_load_session_attr_get_override_data_url(
 {
        const char *ret = NULL;
 
-       if (attr && attr->override_attr->data_url) {
-               ret = attr->raw_override_data_url;
+       if (!attr || !attr->override_attr) {
+               goto end;
        }
 
+       ret = attr->raw_override_data_url;
+end:
        return ret;
 }
 
@@ -130,12 +122,16 @@ const char *lttng_load_session_attr_get_override_url(
 {
        const char *ret = NULL;
 
-       if (attr && (attr->override_attr->path_url ||
+       if (!attr || !attr->override_attr) {
+               goto end;
+       }
+
+       if ((attr->override_attr->path_url ||
                (attr->override_attr->ctrl_url &&
                 attr->override_attr->data_url))) {
                ret = attr->raw_override_url;
        }
-
+end:
        return ret;
 }
 
This page took 0.029347 seconds and 5 git commands to generate.