<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Salut Adrian,</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Multumesc mult pentru clarificari.</div><div class="gmail_default" style="font-family:verdana,sans-serif">Am considerat scenariul pe care mi l-ai spus pentru leak-uri si am reusit sa recreez problema. Intr-adevar, eu setam pointerul de start doar in alloc_bucket, pe care il foloseam o singura data, si anume cand se aloca bucket-ul. Setarea start-ului trebuia facuta in momentul in care apelam adaugarea efectiva in bucket, asa cum am facut si in cazul pointer-ului end.</div><div class="gmail_default" style="font-family:verdana,sans-serif">Cat despre valorile de retur, am avut impresia ca in resize, daca nu se reuseste alocarea, se va returna NULL, insa pentru acest lucru, ar fi trebuit sa am un "goto exit" in loc de "break" si sa ignor codul de copiere al hashtable-ului vechi in cel nou.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">O zi buna,</div><div class="gmail_default" style="font-family:verdana,sans-serif">Codrin</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-04-01 9:07 GMT+03:00 Adrian Stanciu <span dir="ltr"><<a href="mailto:adrian.stanciu.pub@gmail.com" target="_blank">adrian.stanciu.pub@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">2015-04-01 0:51 GMT+03:00 Codrin-Victor Poienaru via so <<a href="mailto:so@cursuri.cs.pub.ro">so@cursuri.cs.pub.ro</a>>:<br>
> Salut,<br>
><br>
> In urma corectarii temei, am primit urmatoarele observatii:<br>
> - leak-uri de memorie<br>
> - nu sunt verificate toate valorile de retur ale functiilor<br>
> si as dori o reevaluare.<br>
<br>
</span>Salut Codrin,<br>
<br>
Am reevaluat tema ta.<br>
<span class=""><br>
><br>
> Pentru leak-uri de memorie, am rulat tema mea manual, pentru fiecare din<br>
> cele 28 de teste publice folosite pentru testare, in valgrind, si se pare ca<br>
> pentru fiecare test aceste leak-uri nu exista defapt. A fost folosit cumva<br>
> alt utilitar pentru detectarea leak-urilor ?<br>
<br>
</span>Am folosit tot valgrind, dar am rulat un alt test. Scenariul în care<br>
aveai probleme era următorul:<br>
* adaug un cuvânt<br>
* șterg cuvântul<br>
* îl adaug iar<br>
<span class=""><br>
> Referitor la valorile de retur ale functiilor, primesc o referinta in<br>
> hashtable.c de exemplu, in care mi se spune ca eu nu verific rezultatul<br>
> alocarii hashtable-ului. Verificarea daca s-a reusit sau nu alocarea se<br>
> realizeaza in main. Acolo aloc un hashtable, si daca nu am reusit, afisez un<br>
> mesaj corespunzator si inchei programul (goto exit). Am considerat<br>
> nepotrivit sa afisez mesajul de eroare in aceeasi functie care aloca<br>
> hashtable-ul din considerente de modularizare. In opinia mea, printf-urile<br>
> ar trebui sa se realizeze numai in functia principala (acesta este si modul<br>
> in care am gandit tema, defapt).<br>
><br>
<br>
</span>Am observat acest lucru dar ți-a scăpat un caz: la operația de resize<br>
nu verifici dacă alocarea a reușit. Din acest motiv nu am aplicat<br>
inițial depunctarea completă de 0.2 puncte, ci una mai "blândă" de 0.1<br>
puncte.<br>
<br>
Am pus explicații extra pentru cele două depunctări pe vmchecker [1],<br>
sper că e mai clar acum. Te rog să le urmărești acolo. Pentru mine<br>
aceste depunctări sunt corecte astfel încât au rămas în vigoare.<br>
<br>
[1] <a href="https://vmchecker.cs.pub.ro" target="_blank">https://vmchecker.cs.pub.ro</a><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
Adrian<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><font face="verdana, sans-serif">Codrin-Victor Poienaru</font><div><font face="verdana, sans-serif"><br></font><div><font face="verdana, sans-serif">University "POLITEHNICA" of Bucharest</font></div><div><font face="verdana, sans-serif">Faculty of Automatic Control and Computer Science</font></div><div><font face="verdana, sans-serif">Department of Computer Science & Engineering</font></div></div></div></div>
</div>