Skip to content
  • Devin Anderson's avatar
    wavparse: Fix crash that occurs in push mode when header chunks are corrupted · 4e03c5f8
    Devin Anderson authored and GStreamer Marge Bot's avatar GStreamer Marge Bot committed
    in certain ways.
    
    In the case that a test is provided for, the size of the `fmt ` chunk is
    changed from 16 bytes to 18 bytes (bytes 17 - 20 below):
    ```
    $ hexdump -C corruptheadertestsrc.wav
    00000000  52 49 46 46 e4 fd 00 00  57 41 56 45 66 6d 74 20  |RIFF....WAVEfmt |
    00000010  12 00 00 00 01 00 01 00  80 3e 00 00 00 7d 00 00  |.........>...}..|
    00000020  02 00 10 00 64 61 74 61                           |....data|
    00000028
    ```
    
    (Note that the original file is much larger.  This was the smallest sub-file
    I could find that would generate the crash.)
    
    Note that, while the same issue doesn't cause a crash in pull mode, there's a
    different issue in that the file is processed successfully as if it was a .wav
    file with zero samples.
    
    Part-of: <!3173>
    4e03c5f8