<div dir="ltr"><div><div>Hello<br><br></div>I have check any memory leak with valgrind and original pdftotext (poppler-0.24.5) because using it's code in my program that <span id="result_box" class="" lang="en"><span class="">converts</span> a sequence of <span class="">pdf files in </span><span class=""></span><span class="">text format, </span></span><span id="result_box" class="" lang="en"><span class="">I've seen</span> <span class="">that takes</span> <span class="">too much</span> <span class="">system memory.<br>
<br><br></span></span></div><div><span id="result_box" class="" lang="en"><span class="">For test I have used a pdf file (it had inside only ONE WORD) with command 'valgrind -v --tool=memcheck --leak-check=full --show-reachable=yes --track-origins=yes ./pdftotext -bbox /tmp/file.pdf - 2>/tmp/valgrind.log >> /tmp/valgrind.log' and in </span></span><span id="result_box" class="" lang="en"><span class=""></span><span class="">return</span> <span class="">briefly</span> <span class="">this result:<br>
<br>==11606== LEAK SUMMARY:<br>==11606== definitely lost: 24 bytes in 1 blocks<br>==11606== indirectly lost: 0 bytes in 0 blocks<br>==11606== possibly lost: 0 bytes in 0 blocks<br>==11606== still reachable: 22,311 bytes in 740 blocks<br>
==11606== suppressed: 0 bytes in 0 blocks<br>==11606== <br>==11606== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)<br>--<br>==11607== LEAK SUMMARY:<br>==11607== definitely lost: 34 bytes in 1 blocks<br>
==11607== indirectly lost: 0 bytes in 0 blocks<br>==11607== possibly lost: 0 bytes in 0 blocks<br>==11607== still reachable: 21,247 bytes in 694 blocks<br>==11607== suppressed: 0 bytes in 0 blocks<br>==11607== <br>
==11607== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)<br>--<br>==11609== LEAK SUMMARY:<br>==11609== definitely lost: 14 bytes in 1 blocks<br>==11609== indirectly lost: 0 bytes in 0 blocks<br>==11609== possibly lost: 0 bytes in 0 blocks<br>
==11609== still reachable: 46,029 bytes in 2,147 blocks<br>==11609== suppressed: 0 bytes in 0 blocks<br>==11609== <br>==11609== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)<br>--<br><br></span></span></div>
<div><span id="result_box" class="" lang="en"><span class="">I'm not expert programmer but in this case log of valgrind like this:<br><br>==11606== 1,600 bytes in 1 blocks are still reachable in loss record 523 of 524<br>
==11606== at 0x4007D89: malloc (vg_replace_malloc.c:236)<br>==11606== by 0x80AE501: xmalloc (in /bin/bash)<br>==11606== by 0x524F4C4E: ???<br>==11606== <br>==11606== 3,163 bytes in 51 blocks are still reachable in loss record 524 of 524<br>
==11606== at 0x4007D89: malloc (vg_replace_malloc.c:236)<br>==11606== by 0x80AE501: xmalloc (in /bin/bash)<br>==11606== by 0x807925A: ??? (in /bin/bash)<br>==11606== by 0x807C12C: maybe_make_export_env (in /bin/bash)<br>
==11606== by 0x808D2C4: command_substitute (in /bin/bash)<br>==11606== by 0x80931B9: ??? (in /bin/bash)<br>==11606== by 0x809431C: ??? (in /bin/bash)<br>==11606== by 0x80946C8: expand_word_unsplit (in /bin/bash)<br>
==11606== by 0x8077B6C: ??? (in /bin/bash)<br>==11606== by 0x80741D4: execute_command_internal (in /bin/bash)<br>==11606== by 0x8077A21: execute_command (in /bin/bash)<br>==11606== by 0x8077FA4: ??? (in /bin/bash)<br>
<br>are incomprehensible for me</span></span><span id="result_box" class="" lang="en"><span class=""> and</span> <span class="">despite</span> <span class="">all my</span> <span class="">goodwill </span></span>I'm <span id="result_box" class="" lang="en"><span class="">not</span> <span class="">able to understand where to find code that cause memory leak.<br>
<br></span></span><span id="result_box" class="" lang="en"><span class=""><span id="result_box" class="" lang="en"><span class="">Unfortunately,</span> <span class="">the excessive use</span> <span class="">of</span> <span class="">memory</span> does not allow<span class=""></span></span></span></span><span id="result_box" class="" lang="en"><span class=""><span id="result_box" class="" lang="en"><span class=""> to utilize code for</span> the<span class=""> intensive uses.</span></span><br>
</span></span></div><div><span id="result_box" class="" lang="en"><span class=""></span></span><span id="result_box" class="" lang="en"><span class=""></span><span class=""></span><span class=""></span><span class=""></span><span class=""></span><span class=""><br>
</span></span></div><div><span id="result_box" class="" lang="en"><span class="">greetings<br><br></span></span></div><div><span id="result_box" class="" lang="en"><span class="">Marco<br></span></span></div><div><span id="result_box" class="" lang="en"><span class=""><br>
<br></span></span></div><span id="result_box" class="" lang="en"><span class=""></span></span></div>