<div><br></div><br><div class="gmail_quote">2013/6/19 Mikael <span dir="ltr"><<a href="mailto:mikael.rcv@gmail.com" target="_blank">mikael.rcv@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br><br><div class="gmail_quote"><div class="im">2013/6/19 Mikael <span dir="ltr"><<a href="mailto:mikael.rcv@gmail.com" target="_blank">mikael.rcv@gmail.com</a>></span><br><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"></blockquote></div><div><br></div><div>Space for improvement or things to note are:<br></div><div><br></div></blockquote><div><br></div></div><div>[..]</div>

<div></div></div></blockquote><div class="gmail_quote"><br></div> * If when not in a <span style="background-color:rgb(255,255,255);color:rgb(34,34,34);font-family:'courier new',monospace;font-size:13px">##resolve-referencing-objects</span> call <font face="arial, helvetica, sans-serif">there'd be any referenced to ___SCMOBJ :s on the heap that are == -1 , there'd be a corresponding number of </font><font face="courier new, monospace"><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)">add_resolved_referencing_</span></font><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)"><font face="courier new, monospace">object </font><font face="arial, helvetica, sans-serif">calls made per GC without any corresponding </font></span><span style="font-size:13px;color:rgb(34,34,34);font-family:'courier new',monospace;background-color:rgb(255,255,255)">get_next_resolved_referencing_</span><span style="font-size:13px;color:rgb(34,34,34);font-family:'courier new',monospace;background-color:rgb(255,255,255)">object</span><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)"><font face="arial, helvetica, sans-serif">  calls,</font></span><font face="arial, helvetica, sans-serif"> causing a serious memory leak.</font></div>

<div class="gmail_quote"><br></div><div class="gmail_quote">   Probably we better have a global boolean variable "scanning_for_references" that <span style="background-color:rgb(255,255,255);color:rgb(34,34,34);font-family:'courier new',monospace;font-size:13px">##resolve-referencing-objects</span> switches the scanning mode on/off, as to secure against unintended <font face="courier new, monospace"><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)">add_resolved_referencing_</span></font><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)"><font face="courier new, monospace">object</font></span> calls?</div>

<div class="gmail_quote"><div> </div><div> * There's no handling of malloc() failure on <font face="courier new, monospace"><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)">add_resolved_referencing_</span></font><span style="color:rgb(34,34,34);background-color:rgb(255,255,255)"><font face="courier new, monospace">object</font></span> , leading to a potential sigsegv. Gambit's other malloc() call does the same though.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div></div><div><br></div><div>Feedback?</div><div><br></div></blockquote><div> </div></div>
</blockquote></div><br>