Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[BUG] --out=report: heap-use-after-free in process608(), and a crash with more than one input file

Aperta
#2,412 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@Deepak-negi11 ci sta già lavorando.

Dal 20/10/2026.

  • #2413 di @Deepak-negi11 — aperta

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
c
Ambito
backend, testing

Direzione di ricerca

Start with params_dump.c:802, ccx_decoders_608.c:1230, and file_functions.c:146, then trace report allocation in init_libraries() and cleanup in dinit_libraries(). Reproduce both reported crashes using the supplied --out=report commands and sample files; done means both single-file and multiple-file runs finish without memory errors. The issue says the reporter has a fix ready, so check whether that work is already underway before taking it on.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

CCExtractor version: master (d7eb132e)

Necessary information

  • Is this a regression? Unknown. The code that causes it dates from 2015 (c4e91f8c).
  • Platform: Mac
  • Arguments: --out=report

Video links

Public samples from https://streams.videolan.org/streams/ts/:

  • CC/wabc-4pm-ota.clip1.ts
  • Closed Caption EIA.ts and CC/hevc_cc.ts (any two files work for the second problem)

Additional information

Two crashes with --out=report, from the same cause:

  1. ccextractor --out=report wabc-4pm-ota.clip1.ts, built with AddressSanitizer:
ERROR: AddressSanitizer: heap-use-after-free  WRITE of size 1
  #0 process608        ccx_decoders_608.c:1230
  #2 do_cb             ccx_decoders_common.c
freed by: print_file_report params_dump.c:802  <- switch_to_next_file
allocated by: init_libraries lib_ccx.c:135
  1. ccextractor --out=report "Closed Caption EIA.ts" hevc_cc.ts crashes after the first file's report (segfault in a normal build; AddressSanitizer: SEGV at file_functions.c:146).

Cause: at the end of each file, print_file_report() frees ctx->freport.data_from_608 and then clears ctx->freport. But the 608 decoders keep a pointer to that report (settings_608->report) and write to it for frames that are still buffered, and for every later file. Clearing freport also sets data_from_708 to NULL, which switch_to_next_file() reads for the next file. Both reports are owned by init_libraries() / dinit_libraries(), so print_file_report() shouldn't free them.

I have a fix ready.

Lingua principale
C
Stelle
908
Fork
595
Merge medio
3g 23h
PR unite (30g)
32

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di CCExtractor/ccextractor

Tutte le issue di CCExtractor/ccextractor

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.