- p_sys->i_buffer_size = p_sys->i_buffer + p_block->i_buffer;
- p_sys->p_buffer = realloc( p_sys->p_buffer, p_sys->i_buffer_size );
+ size_t i_buffer_size = p_sys->i_buffer + p_block->i_buffer;
+ uint8_t *p_buffer = realloc( p_sys->p_buffer, i_buffer_size );
+ if( p_buffer )
+ {
+ p_sys->i_buffer_size = i_buffer_size;
+ p_sys->p_buffer = p_buffer;
+ }
+ else
+ {
+ p_block->i_buffer = 0;
+ }