Problema e ca ai buffer overflow și nu memory leaks. Undeva faci un acces peste dimensiunea stivei
Poti dezactiva temporar mecanismul din gcc folosind opțiunea nepermisa -fno-stack-protector și sa vezi dacă dispare Valgrind nu e capabil sa detecteze asa ceva. Baga cu gdb pe acel print problema după ce ai compilat fără opțiunea de care zic On 14 Mar 2017 20:44, "Ionutz Sc via so" <so@cursuri.cs.pub.ro> wrote: > Buna seara, > > Pe linux, cand testez tema cu comanda "valgrind ./tema1 256 < date.in" ( > date.in contine primele 3 linii din testul 22), valgrind nu seziseaza > niciun leak de memorie: > All heap blocks were freed -- no leaks are possible > ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) > insa la output apare si *** stack smashing detected ***: ./tema1 terminated > Nu reusesc sa-mi dau seama ce anume provoaca stack smashing-ul. > Am testat in loc de linia cu print_bucket si cu un sir de caractere random > de genul: > asdadfasda asdasdasdasd asdasdasdasd > Am observat ca daca las doar 2 cuvinte random pe acea linie, nu face stack > smashing, doar cu 3 face. > Multumesc anticipat! > > Cu stima, > Ionut Niculici > > _______________________________________________ > http://ocw.cs.pub.ro/courses/so/info/lista-discutii >
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii