[FFmpeg-devel] [PATCH 14/18] avformat/flacenc: port to the new packet list API

Michael Niedermayer michael at niedermayer.cc
Thu Nov 19 18:42:38 EET 2020


On Wed, Nov 18, 2020 at 01:52:43PM -0300, James Almer wrote:
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
>  libavformat/flacenc.c | 13 ++++++++-----
>  1 file changed, 8 insertions(+), 5 deletions(-)

crashes
-i ~/bug/857/rythmortis.flac -t 5 -bitexact -y 24bit.flac
not sure where the sample is, i couldnt find it on the server

==22032== Conditional jump or move depends on uninitialised value(s)
==22032==    at 0x585483: flac_write_audio_packet (flacenc.c:297)
==22032==    by 0x585526: flac_queue_flush (flacenc.c:313)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==    by 0x63F2D9: write_packet (mux.c:731)
==22032==    by 0x64063B: interleaved_write_packet (mux.c:1120)
==22032==    by 0x6407FA: write_packet_common (mux.c:1145)
==22032==    by 0x640AC0: write_packets_common (mux.c:1202)
==22032==    by 0x640C7F: av_interleaved_write_frame (mux.c:1257)
==22032==    by 0x24B955: write_packet (ffmpeg.c:837)
==22032==    by 0x24BB4F: output_packet (ffmpeg.c:883)
==22032==    by 0x250A8B: flush_encoders (ffmpeg.c:1995)
==22032==    by 0x25B73D: transcode (ffmpeg.c:4779)
==22032==    by 0x25BF7E: main (ffmpeg.c:4964)
==22032==  Uninitialised value was created by a stack allocation
==22032==    at 0x5854C2: flac_queue_flush (flacenc.c:303)
==22032== 
==22032== Conditional jump or move depends on uninitialised value(s)
==22032==    at 0x54F732: avio_write (aviobuf.c:232)
==22032==    by 0x5854A6: flac_write_audio_packet (flacenc.c:298)
==22032==    by 0x585526: flac_queue_flush (flacenc.c:313)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==    by 0x63F2D9: write_packet (mux.c:731)
==22032==    by 0x64063B: interleaved_write_packet (mux.c:1120)
==22032==    by 0x6407FA: write_packet_common (mux.c:1145)
==22032==    by 0x640AC0: write_packets_common (mux.c:1202)
==22032==    by 0x640C7F: av_interleaved_write_frame (mux.c:1257)
==22032==    by 0x24B955: write_packet (ffmpeg.c:837)
==22032==    by 0x24BB4F: output_packet (ffmpeg.c:883)
==22032==    by 0x250A8B: flush_encoders (ffmpeg.c:1995)
==22032==    by 0x25B73D: transcode (ffmpeg.c:4779)
==22032==    by 0x25BF7E: main (ffmpeg.c:4964)
==22032==  Uninitialised value was created by a stack allocation
==22032==    at 0x5854C2: flac_queue_flush (flacenc.c:303)
==22032== 
==22032== Conditional jump or move depends on uninitialised value(s)
==22032==    at 0x76FC7F: av_packet_free_side_data (avpacket.c:276)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==    by 0x63F2D9: write_packet (mux.c:731)
==22032==    by 0x64063B: interleaved_write_packet (mux.c:1120)
==22032==    by 0x6407FA: write_packet_common (mux.c:1145)
==22032==    by 0x640AC0: write_packets_common (mux.c:1202)
==22032==    by 0x640C7F: av_interleaved_write_frame (mux.c:1257)
==22032==    by 0x24B955: write_packet (ffmpeg.c:837)
==22032==    by 0x24BB4F: output_packet (ffmpeg.c:883)
==22032==    by 0x250A8B: flush_encoders (ffmpeg.c:1995)
==22032==    by 0x25B73D: transcode (ffmpeg.c:4779)
==22032==    by 0x25BF7E: main (ffmpeg.c:4964)
==22032==  Uninitialised value was created by a stack allocation
==22032==    at 0x5854C2: flac_queue_flush (flacenc.c:303)
==22032== 
==22032== Use of uninitialised value of size 8
==22032==    at 0x120A88B: av_freep (mem.c:232)
==22032==    by 0x76FC70: av_packet_free_side_data (avpacket.c:277)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==    by 0x63F2D9: write_packet (mux.c:731)
==22032==    by 0x64063B: interleaved_write_packet (mux.c:1120)
==22032==    by 0x6407FA: write_packet_common (mux.c:1145)
==22032==    by 0x640AC0: write_packets_common (mux.c:1202)
==22032==    by 0x640C7F: av_interleaved_write_frame (mux.c:1257)
==22032==    by 0x24B955: write_packet (ffmpeg.c:837)
==22032==    by 0x24BB4F: output_packet (ffmpeg.c:883)
==22032==    by 0x250A8B: flush_encoders (ffmpeg.c:1995)
==22032==    by 0x25B73D: transcode (ffmpeg.c:4779)
==22032==    by 0x25BF7E: main (ffmpeg.c:4964)
==22032==  Uninitialised value was created by a stack allocation
==22032==    at 0x5854C2: flac_queue_flush (flacenc.c:303)
==22032== 
==22032== Use of uninitialised value of size 8
==22032==    at 0x120A8A2: av_freep (mem.c:233)
==22032==    by 0x76FC70: av_packet_free_side_data (avpacket.c:277)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==    by 0x63F2D9: write_packet (mux.c:731)
==22032==    by 0x64063B: interleaved_write_packet (mux.c:1120)
==22032==    by 0x6407FA: write_packet_common (mux.c:1145)
==22032==    by 0x640AC0: write_packets_common (mux.c:1202)
==22032==    by 0x640C7F: av_interleaved_write_frame (mux.c:1257)
==22032==    by 0x24B955: write_packet (ffmpeg.c:837)
==22032==    by 0x24BB4F: output_packet (ffmpeg.c:883)
==22032==    by 0x250A8B: flush_encoders (ffmpeg.c:1995)
==22032==    by 0x25B73D: transcode (ffmpeg.c:4779)
==22032==    by 0x25BF7E: main (ffmpeg.c:4964)
==22032==  Uninitialised value was created by a stack allocation
==22032==    at 0x5854C2: flac_queue_flush (flacenc.c:303)
==22032== 
==22032== Invalid free() / delete / delete[] / realloc()
==22032==    at 0x4C32D3B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==22032==    by 0x120A868: av_free (mem.c:224)
==22032==    by 0x120A8B0: av_freep (mem.c:234)
==22032==    by 0x76FC70: av_packet_free_side_data (avpacket.c:277)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==    by 0x1FFEFFFAEF: ???
==22032==    by 0x16920EFF: ???
==22032==    by 0x1FFEFFFAEF: ???
==22032==    by 0x16920EFF: ???
==22032==    by 0x16921A7F: ???
==22032==    by 0x16921B7F: ???
==22032==    by 0x1FFEFFFAAF: ???
==22032==    by 0x63F2D9: write_packet (mux.c:731)
==22032==    by 0x1FFEFFFAEF: ???
==22032==    by 0x16920EFF: ???
==22032==  Address 0x1ffefff9f0 is on thread 1's stack
==22032== 
==22032== Conditional jump or move depends on uninitialised value(s)
==22032==    at 0x4C32CF1: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==22032==    by 0x120A868: av_free (mem.c:224)
==22032==    by 0x120A8B0: av_freep (mem.c:234)
==22032==    by 0x76FC70: av_packet_free_side_data (avpacket.c:277)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==  Uninitialised value was created by a stack allocation
==22032==    at 0x5856B0: flac_write_packet (flacenc.c:356)
==22032== 
==22032== Invalid read of size 8
==22032==    at 0x120A88B: av_freep (mem.c:232)
==22032==    by 0x76FC70: av_packet_free_side_data (avpacket.c:277)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==  Address 0x1fff001000 is not stack'd, malloc'd or (recently) free'd
==22032== 
==22032== 
==22032== Process terminating with default action of signal 11 (SIGSEGV)
==22032==  Access not within mapped region at address 0x1FFF001000
==22032==    at 0x120A88B: av_freep (mem.c:232)
==22032==    by 0x76FC70: av_packet_free_side_data (avpacket.c:277)
==22032==    by 0x770BB0: av_packet_unref (avpacket.c:608)
==22032==    by 0x585542: flac_queue_flush (flacenc.c:315)
==22032==    by 0x585887: flac_write_packet (flacenc.c:395)
==22032==  If you believe this happened as a result of a stack
==22032==  overflow in your program's main thread (unlikely but
==22032==  possible), you can try to increase the size of the
==22032==  main thread stack using the --main-stacksize= flag.
==22032==  The main thread stack size used in this run was 8388608.

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Those who are too smart to engage in politics are punished by being
governed by those who are dumber. -- Plato 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20201119/f1645f69/attachment.sig>


More information about the ffmpeg-devel mailing list