I'm not sure if it's a bug but it seems that memory allocated by multikey don't become free if the <!-- linecount is present (the free is inside the else part of the if) ... This should solve it. Francesco --- htmllog.c 2007-07-21 18:13:34.000000000 +0200 +++ htmllog.c.new 2007-07-26 20:23:42.000000000 +0200 @@ -412,14 +412,15 @@ } while (p && (*p)); /* There is probably a header line ... */ if (!netwarediskreport && (linecount > 1)) linecount--; } - xfree(multikey); - - fprintf(output, "<!-- linecount=%d -->\n", linecount); } + xfree(multikey); + + fprintf(output, "<!-- linecount=%d -->\n", linecount); + fprintf(output, "%s\n", hobbit_graph_data(hostname, displayname, service, color, graph, linecount, HG_WITHOUT_STALE_RRDS, HG_PLAIN_LINK, locatorbased, now-graphtime, now)); } if (histlocation == HIST_BOTTOM) { historybutton(cgibinurl, hostname, service, ip, displayname,