[FFmpeg-devel] [PATCH] mem: heap memory poisoning.
Clément Bœsch
ubitux at gmail.com
Mon Jul 2 21:02:57 CEST 2012
On Mon, Jul 02, 2012 at 08:43:00PM +0200, Michael Niedermayer wrote:
> On Mon, Jul 02, 2012 at 07:34:13PM +0200, Clément Bœsch wrote:
> > On Mon, Jul 02, 2012 at 07:32:04PM +0200, Clément Bœsch wrote:
> > > Enable it by default with FATE.
> > > limitation: not random, and not supported with realloc.
> > > ---
> > > configure | 2 ++
> > > libavutil/mem.c | 7 ++++++-
> > > tests/fate.sh | 1 +
> > > 3 files changed, 9 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/configure b/configure
> > > index a1346fa..cb8a04d 100755
> > > --- a/configure
> > > +++ b/configure
> > > @@ -286,6 +286,7 @@ Developer options (useful when working on FFmpeg itself):
> > > --disable-stripping disable stripping of executables and shared libraries
> > > --assert-level=level 0(default), 1 or 2, amount of assertion testing,
> > > 2 causes a slowdown at runtime.
> > > + --enable-memory-poisoning fill heap uninitialized allocated space with arbitrary data
> > > --valgrind=VALGRIND run "make fate" tests through valgrind to detect memory
> > > leaks and errors, using the specified valgrind binary.
> > > Cannot be combined with --target-exec
> > > @@ -1080,6 +1081,7 @@ CONFIG_LIST="
> > > lsp
> > > mdct
> > > memalign_hack
> > > + memory_poisoning
> > > mpegaudiodsp
> > > network
> > > nonfree
> > > diff --git a/libavutil/mem.c b/libavutil/mem.c
> > > index 385ace0..20485a8 100644
> > > --- a/libavutil/mem.c
> > > +++ b/libavutil/mem.c
> > > @@ -125,8 +125,13 @@ void *av_malloc(size_t size)
> > > #else
> > > ptr = malloc(size);
> > > #endif
> > > - if(!ptr && !size)
> > > + if(!ptr && !size) {
> > > + size = 1;
> > > ptr= av_malloc(1);
> > > + }
> > > +#if CONFIG_MEMORY_POISONING
> > > + memset(ptr, 0x2a, size);
> >
> > mpf. Added a if (ptr) locally.
>
> LGTM
>
Pushed.
[...]
--
Clément B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20120702/cbb0211d/attachment.asc>
More information about the ffmpeg-devel
mailing list