<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><font color="#000000" face="Calibri,sans-serif">Can you send a pull request on GitHub? <br id="FontBreak"></font><br> <BR><div>> Date: Tue, 2 Dec 2014 12:01:29 +0100<br>> From: markus.beth@zkrd.de<br>> To: mono-devel-list@lists.ximian.com<br>> Subject: [Mono-dev] file handle leak in cpu_load<br>> <br>> Hi all,<br>> <br>> last week we used the profiler of a mono 3.10.0 installation on <br>> Linux x86_64 and we found it leaks file handles (for /proc/loadavg).<br>> <br>> I located the problem in the function cpu_load in <br>> mono/utils/mono-counters.c. If a premature return is taken, the FILE <br>> pointer f is not fclose()-ed.<br>> <br>> I propose the following fix:<br>> <br>> ---<br>>   mono/utils/mono-counters.c | 2 +-<br>>   1 file changed, 1 insertion(+), 1 deletion(-)<br>> <br>> diff --git a/mono/utils/mono-counters.c b/mono/utils/mono-counters.c<br>> index 1e0840c..c669454 100644<br>> --- a/mono/utils/mono-counters.c<br>> +++ b/mono/utils/mono-counters.c<br>> @@ -360,6 +360,7 @@ cpu_load (int kind)<br>>          FILE *f = fopen ("/proc/loadavg", "r");<br>>          if (f) {<br>>                  len = fread (buffer, 1, sizeof (buffer) - 1, f);<br>> +               fclose (f);<br>>                  if (len > 0) {<br>>                          buffer [len < 511 ? len : 511] = 0;<br>>                          b = buffer;<br>> @@ -374,7 +375,6 @@ cpu_load (int kind)<br>>                                  }<br>>                          }<br>>                  }<br>> -               fclose (f);<br>>          }<br>>   #endif<br>>          return 0;<br>> -- <br>> <br>> It applies on master and also (with an offset of -32 lines) on <br>> mono-3.10.0-branch.<br>> <br>> What do you think?<br>> <br>> Regards,<br>> Markus<br>> _______________________________________________<br>> Mono-devel-list mailing list<br>> Mono-devel-list@lists.ximian.com<br>> http://lists.ximian.com/mailman/listinfo/mono-devel-list<br></div>                                          </div></body>
</html>