Code

fix for segfault in rrd_cgi: caused by freeing a invalid address when printing an...
[rrdtool.git] / src / rrd_cgi.c
index 6b1cf36dae58059440df5965b35d508d3c1c00c4..9f0a0bd879afe822e28e9ec759a782955a597bda 100644 (file)
@@ -305,6 +305,7 @@ static void calfree (void){
     if (calcpr) {
            free(calcpr);
     }
+    calcpr=NULL;
   }
 }
 
@@ -778,7 +779,6 @@ char* drawgraph(long argc, const char **args){
       char *err = malloc((strlen(rrd_get_error())+DS_NAM_SIZE)*sizeof(char));
       sprintf(err, "[ERROR: %s]",rrd_get_error());
       rrd_clear_error();
-      calfree();
       return err;
     }
   }