Skip to content
Snippets Groups Projects
  • Richard Mudgett's avatar
    b7b800b6
    audiohook.c: Fix freeing a frame and still using it. · b7b800b6
    Richard Mudgett authored
    Memory corruption happened to the media frame caches when an audio hook
    freed a frame when it shouldn't.  I think the freed frame was because a
    jitter buffer interpolated a missing frame and the audio hook
    unconditionally freed it.
    
    * Made audiohook.c:audio_audiohook_write_list() not free an interpolated
    frame if it is the same frame as what was passed into the routine.
    
    * Made plc.c:normalise_history() use memmove() instead of memcpy() on a
    memory block that could overlap.  Found by valgrind investigating this
    issue.
    
    ASTERISK-27238
    ASTERISK-27412
    
    Change-Id: I548d86894281fc4529aefeb9f161f2131ecc6fde
    b7b800b6
    History
    audiohook.c: Fix freeing a frame and still using it.
    Richard Mudgett authored
    Memory corruption happened to the media frame caches when an audio hook
    freed a frame when it shouldn't.  I think the freed frame was because a
    jitter buffer interpolated a missing frame and the audio hook
    unconditionally freed it.
    
    * Made audiohook.c:audio_audiohook_write_list() not free an interpolated
    frame if it is the same frame as what was passed into the routine.
    
    * Made plc.c:normalise_history() use memmove() instead of memcpy() on a
    memory block that could overlap.  Found by valgrind investigating this
    issue.
    
    ASTERISK-27238
    ASTERISK-27412
    
    Change-Id: I548d86894281fc4529aefeb9f161f2131ecc6fde