Crash processing "01-BBC1.EastEnders.ts" #162

Closed
opened 2026-01-29 16:36:44 +00:00 by claunia · 1 comment
Owner

Originally created by @cfsmp3 on GitHub (Jun 22, 2016).

Originally assigned to: @anshul1912 on GitHub.

In both Windows and Linux, when the OCR module is present, the following options will cause a crash:

ccextractor-ocr -out=srt -parsePMT -parsePAT -codec dvbsub 01-BBC1.EastEnders.ts

(ccextractor-ocr is just the name of the binary in this case)

Valgrind shows this:
==26011== Mismatched free() / delete / delete []
==26011== at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26011== by 0x40F4C6: freep (ccx_common_common.c:65)
==26011== by 0x4500F7: paraof_ocrtext (ocr.c:423)
==26011== by 0x44C2E1: write_cc_bitmap_as_srt (ccx_encoders_srt.c:116)
==26011== by 0x456272: encode_sub (ccx_encoders_common.c:1415)
==26011== by 0x410BFD: process_data (general_loop.c:669)
==26011== by 0x411205: general_loop (general_loop.c:820)
==26011== by 0x406293: main (ccextractor.c:152)
==26011== Address 0xf2d2520 is 0 bytes inside a block of size 27 alloc'd
==26011== at 0x4C2E80F: operator new[](unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26011== by 0x51CC2DE: tesseract::TessBaseAPI::GetUTF8Text() (in /usr/lib/libtesseract.so.3.0.4)
==26011== by 0x44F7E8: ocr_bitmap (ocr.c:186)
==26011== by 0x44FF53: ocr_rect (ocr.c:361)
==26011== by 0x40EC66: write_dvb_sub (dvb_subtitle_decoder.c:1540)
==26011== by 0x40EEF3: dvbsub_decode (dvb_subtitle_decoder.c:1624)
==26011== by 0x410805: process_data (general_loop.c:573)
==26011== by 0x411205: general_loop (general_loop.c:820)
==26011== by 0x406293: main (ccextractor.c:152)
==26011==
5% | 00:47==26011== Conditional jump or move depends on uninitialised value(s)
==26011== at 0x51E5DF7: tesseract::Tesseract::quality_based_rejection(PAGE_RES_IT&, unsigned char) (in /usr/lib/libtesseract.so.3.0.4)
==26011== by 0x51D928A: tesseract::Tesseract::rejection_passes(PAGE_RES_, ETEXT_DESC_, TBOX const_, char const_) (in /usr/lib/libtesseract.so.3.0.4)
==26011== by 0x51E05D6: tesseract::Tesseract::recog_all_words(PAGE_RES_, ETEXT_DESC_, TBOX const_, char const_, int) (in /usr/lib/libtesseract.so.3.0.4)
==26011== by 0x51CB064: tesseract::TessBaseAPI::Recognize(ETEXT_DESC*) (in /usr/lib/libtesseract.so.3.0.4)
==26011== by 0x44F7C6: ocr_bitmap (ocr.c:182)
==26011== by 0x44FF53: ocr_rect (ocr.c:361)
==26011== by 0x40EC66: write_dvb_sub (dvb_subtitle_decoder.c:1540)
==26011== by 0x40EEF3: dvbsub_decode (dvb_subtitle_decoder.c:1624)
==26011== by 0x410805: process_data (general_loop.c:573)
==26011== by 0x411205: general_loop (general_loop.c:820)
==26011== by 0x406293: main (ccextractor.c:152)
==26011==

Originally created by @cfsmp3 on GitHub (Jun 22, 2016). Originally assigned to: @anshul1912 on GitHub. In both Windows and Linux, when the OCR module is present, the following options will cause a crash: ccextractor-ocr -out=srt -parsePMT -parsePAT -codec dvbsub 01-BBC1.EastEnders.ts (ccextractor-ocr is just the name of the binary in this case) Valgrind shows this: ==26011== Mismatched free() / delete / delete [] ==26011== at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==26011== by 0x40F4C6: freep (ccx_common_common.c:65) ==26011== by 0x4500F7: paraof_ocrtext (ocr.c:423) ==26011== by 0x44C2E1: write_cc_bitmap_as_srt (ccx_encoders_srt.c:116) ==26011== by 0x456272: encode_sub (ccx_encoders_common.c:1415) ==26011== by 0x410BFD: process_data (general_loop.c:669) ==26011== by 0x411205: general_loop (general_loop.c:820) ==26011== by 0x406293: main (ccextractor.c:152) ==26011== Address 0xf2d2520 is 0 bytes inside a block of size 27 alloc'd ==26011== at 0x4C2E80F: operator new[](unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==26011== by 0x51CC2DE: tesseract::TessBaseAPI::GetUTF8Text() (in /usr/lib/libtesseract.so.3.0.4) ==26011== by 0x44F7E8: ocr_bitmap (ocr.c:186) ==26011== by 0x44FF53: ocr_rect (ocr.c:361) ==26011== by 0x40EC66: write_dvb_sub (dvb_subtitle_decoder.c:1540) ==26011== by 0x40EEF3: dvbsub_decode (dvb_subtitle_decoder.c:1624) ==26011== by 0x410805: process_data (general_loop.c:573) ==26011== by 0x411205: general_loop (general_loop.c:820) ==26011== by 0x406293: main (ccextractor.c:152) ==26011== 5% | 00:47==26011== Conditional jump or move depends on uninitialised value(s) ==26011== at 0x51E5DF7: tesseract::Tesseract::quality_based_rejection(PAGE_RES_IT&, unsigned char) (in /usr/lib/libtesseract.so.3.0.4) ==26011== by 0x51D928A: tesseract::Tesseract::rejection_passes(PAGE_RES_, ETEXT_DESC_, TBOX const_, char const_) (in /usr/lib/libtesseract.so.3.0.4) ==26011== by 0x51E05D6: tesseract::Tesseract::recog_all_words(PAGE_RES_, ETEXT_DESC_, TBOX const_, char const_, int) (in /usr/lib/libtesseract.so.3.0.4) ==26011== by 0x51CB064: tesseract::TessBaseAPI::Recognize(ETEXT_DESC*) (in /usr/lib/libtesseract.so.3.0.4) ==26011== by 0x44F7C6: ocr_bitmap (ocr.c:182) ==26011== by 0x44FF53: ocr_rect (ocr.c:361) ==26011== by 0x40EC66: write_dvb_sub (dvb_subtitle_decoder.c:1540) ==26011== by 0x40EEF3: dvbsub_decode (dvb_subtitle_decoder.c:1624) ==26011== by 0x410805: process_data (general_loop.c:573) ==26011== by 0x411205: general_loop (general_loop.c:820) ==26011== by 0x406293: main (ccextractor.c:152) ==26011==
Author
Owner

@cfsmp3 commented on GitHub (Jun 28, 2016):

Confirmed fixed.

@cfsmp3 commented on GitHub (Jun 28, 2016): Confirmed fixed.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ccextractor#162