poppler-0.44.0: memory leak (valgrind) in Gfx::doImage on broken file
Submitted by LE GARREC Vincent
Assigned to poppler-bugs
Description
colorMap is not freed on broken file.
==10237== 1,472,616 (217,200 direct, 1,255,416 indirect) bytes in 181 blocks are definitely lost in loss record 45 of 46 ==10237== at 0x4C2C25D: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==10237== by 0x4FC00D4: Gfx::doImage(Object*, Stream*, bool) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x4FBEEE9: Gfx::opXObject(Object*, int) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x4FABE4B: Gfx::execOp(Object*, Object*, int) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x4FAB6DF: Gfx::go(bool) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x4FAB4B0: Gfx::display(Object*, bool) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x50180C2: Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool ()(void), void*, bool ()(Annot, void*), void*, bool) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x5017AFF: Page::display(OutputDev*, double, double, int, bool, bool, bool, bool ()(void), void*, bool ()(Annot, void*), void*, bool) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x501BB8E: PDFDoc::displayPage(OutputDev*, int, double, double, int, bool, bool, bool, bool ()(void), void*, bool ()(Annot, void*), void*, bool) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x501BC2F: PDFDoc::displayPages(OutputDev*, int, int, double, double, int, bool, bool, bool, bool ()(void), void*, bool ()(Annot, void*), void*) (in /usr/lib64/libpoppler.so.60.0.0) ==10237== by 0x40EEF4: main (in /usr/bin/pdftohtml)