Am inteles.<br><br><div class="gmail_quote">On 13 March 2012 11:58, Razvan Deaconescu <span dir="ltr">&lt;<a href="mailto:razvan.deaconescu@cs.pub.ro">razvan.deaconescu@cs.pub.ro</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">Mihail Costea &lt;<a href="mailto:mihail.costea90@gmail.com">mihail.costea90@gmail.com</a>&gt; writes:<br>
&gt; Salut,<br>
&gt;<br>
&gt; Primesc memory leaks de la valgrind in cazul in care utilizez &quot;fork()&quot; fara<br>
&gt; a face si execvp (altfel spus cand folosesc &amp;, | sau comanda invalida).<br>
&gt; Mai jos e mesajul din valgrind. Nu stiu ce sa ii mai fac. Ii dau<br>
&gt; &quot;free_parse_memory()&quot; inainte de fiecare &quot;exit(code)&quot; al fiecarui copil si<br>
&gt; pentru cazul in care fork() ar esua. Am elliminat restul memory leak-urilor<br>
&gt; care nu tine de parser. La acesta mai mult de un &quot;free_parse_memory()&quot;<br>
&gt; inainte de fiecare exit nu pot face.<br>
&gt;<br>
&gt; ==17445== HEAP SUMMARY:<br>
&gt; ==17445==     in use at exit: 8 bytes in 1 blocks<br>
&gt; ==17445==   total heap usage: 13 allocs, 12 frees, 362 bytes allocated<br>
&gt; ==17445==<br>
&gt; ==17445== 8 bytes in 1 blocks are still reachable in loss record 1 of 1<br>
&gt; ==17445==    at 0x4C28F9F: malloc (vg_replace_malloc.c:236)<br>
&gt; ==17445==    by 0x4052C8: yyalloc(unsigned long) (parser.yy.c:2006)<br>
&gt; ==17445==    by 0x404DB9: yyensure_buffer_stack() (parser.yy.c:1707)<br>
&gt; ==17445==    by 0x4047E8: yy_switch_to_buffer(yy_buffer_state*)<br>
&gt; (parser.yy.c:1504)<br>
&gt; ==17445==    by 0x404FB3: yy_scan_buffer(char*, unsigned long)<br>
&gt; (parser.yy.c:1767)<br>
&gt; ==17445==    by 0x4050A0: yy_scan_bytes(char const*, int) (parser.yy.c:1811)<br>
&gt; ==17445==    by 0x404FFC: yy_scan_string(char const*) (parser.yy.c:1783)<br>
&gt; ==17445==    by 0x405326: globalParseAnotherString (parser.l:243)<br>
&gt; ==17445==    by 0x407F4B: parse_line (parser.y:540)<br>
&gt; ==17445==    by 0x4016E5: main (Tema1.cpp:47)<br>
<br>
</div></div>Este eroare de parser (flex/bison). Tot ceea ce apare de acolo (adică<br>
ceea ce începe cu yy_...) nu se &quot;contorizează&quot; :-)<br>
<br>
Răzvan<br>
_______________________________________________<br>
<a href="http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii" target="_blank">http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii</a></blockquote></div><br>