Code

use snprintf, strdup, ... where possible to make for safer operation -- Martin Pelikan
[rrdtool-all.git] / program / src / rrd_info.c
index d86a9074d90e631184d04e758652fa7788375c84..5722025384cd1fed366b92434d074124cc4ca237 100644 (file)
@@ -71,8 +71,7 @@ rrd_info_t
         next->value.u_int = value.u_int;
         break;
     case RD_I_STR:
-        next->value.u_str = (char*)malloc(sizeof(char) * (strlen(value.u_str) + 1));
-        strcpy(next->value.u_str, value.u_str);
+        next->value.u_str = strdup(value.u_str);
         break;
     case RD_I_BLO:
         next->value.u_blo.size = value.u_blo.size;
@@ -152,6 +151,7 @@ rrd_info_t *rrd_info(
     else
     info = rrd_info_r(argv[optind]);
 
+    if (opt_daemon) free(opt_daemon);
     return (info);
 } /* rrd_info_t *rrd_info */