]> AND Public Git Repository - simgrid.git/blobdiff - tools/tesh2/src/variable.c
Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Removed bogus +1 while printing flow id coping with all experiments done before,...
[simgrid.git] / tools / tesh2 / src / variable.c
index 76894fbae7a14c83e1e87a3be7bcd48c89a94547..77268da0b0750e9b9be010004b977b568f53d9a2 100644 (file)
@@ -7,7 +7,7 @@ variable_new(const char* name, const char* val)
 {\r
        variable_t variable;\r
        \r
-       if(!name || !val)\r
+       if(!name)\r
        {\r
                errno = EINVAL;\r
                return NULL;\r
@@ -16,7 +16,10 @@ variable_new(const char* name, const char* val)
        variable = xbt_new0(s_variable_t, 1);\r
        \r
        variable->name = strdup(name);\r
-       variable->val = strdup(val);\r
+\r
+       if(val)\r
+               variable->val = strdup(val);\r
+\r
        variable->used = 0;\r
        variable->env = 0;\r
        variable->err = 0;\r
@@ -30,9 +33,12 @@ variable_free(variable_t* variableptr)
 {\r
        if(!(*variableptr))\r
                return EINVAL;\r
-               \r
-       free((*((variable_t*)(variableptr)))->name);\r
-       free((*((variable_t*)(variableptr)))->val);\r
+       \r
+       if((*((variable_t*)(variableptr)))->name)\r
+               free((*((variable_t*)(variableptr)))->name);\r
+       \r
+       if((*((variable_t*)(variableptr)))->val)\r
+               free((*((variable_t*)(variableptr)))->val);\r
        \r
        free(*variableptr);\r
        \r