Fix: memleak in utils_partial_realpath
[lttng-tools.git] / src / common / config / config.c
index 35d9bb2543284811ced1a899a1a8644ff3fda5ff..dca765b0fd6b23de06c76e67e5f17fde29e554c9 100644 (file)
@@ -330,11 +330,10 @@ static xmlChar *encode_string(const char *in_str)
 
        in_len = strlen(in_str);
        /*
-        * Add 1 byte for the NULL terminted character. The factor 2 here is
-        * because UTF-8 can be on two bytes so this fits the worst case for each
-        * bytes.
+        * Add 1 byte for the NULL terminted character. The factor 4 here is
+        * used because UTF-8 characters can take up to 4 bytes.
         */
-       out_len = (in_len * 2) + 1;
+       out_len = (in_len * 4) + 1;
        out_str = xmlMalloc(out_len);
        if (!out_str) {
                goto end;
@@ -1416,6 +1415,23 @@ int process_event_node(xmlNodePtr event_node, struct lttng_handle *handle,
 
        memset(&event, 0, sizeof(event));
 
+       /* Initialize default log level which varies by domain */
+       switch (handle->domain.type)
+       {
+       case LTTNG_DOMAIN_JUL:
+               event.loglevel = LTTNG_LOGLEVEL_JUL_ALL;
+               break;
+       case LTTNG_DOMAIN_LOG4J:
+               event.loglevel = LTTNG_LOGLEVEL_LOG4J_ALL;
+               break;
+       case LTTNG_DOMAIN_UST:
+       case LTTNG_DOMAIN_KERNEL:
+               event.loglevel = LTTNG_LOGLEVEL_DEBUG;
+               break;
+       default:
+               assert(0);
+       }
+
        for (node = xmlFirstElementChild(event_node); node;
                node = xmlNextElementSibling(node)) {
                if (!strcmp((const char *) node->name, config_element_name)) {
This page took 0.02386 seconds and 4 git commands to generate.