delete newVideSample;
Esto no va a liberar cualquier memoria que asignado a newVideoSample->buffer
sin embargo, debe liberarlo explícitamente antes de eliminarlo.
//Free newVideSample->buffer if it was allocated using malloc
free((void*)(newVideSample->buffer));
//if it was created with new, use `delete` to free it
delete newVideSample->buffer;
//Now you can safely delete without leaking any memory
delete newVideSample;
Normalmente este tipo de liberación está escrito en el destructor de la clase de modo que será llamado automáticamente cuando delete
el objeto creado dinámicamente.
Gracias @steve por mencionar it :)
¿A quién pertenece el * buffer *? Las probabilidades no son cero que también necesitas un destructor. –