[Ffmpeg-cvslog] r5559 - trunk/libavcodec/mem.c

gpoirier subversion
Fri Jun 30 10:00:02 CEST 2006


Author: gpoirier
Date: Fri Jun 30 10:00:01 2006
New Revision: 5559

Modified:
   trunk/libavcodec/mem.c

Log:
* Allocating 16 bytes more for the MEMALIGN_HACK is enough. There's no
need for 1 more extra byte.

* Checking whether the to be allocated size is larger than INT_MAX,
doesn't assure that size+16 bytes for the MEMALIGN_HACK isn't larger
than INT_MAX.

* malloc might return NULL. Checking for it before using that pointer
seems like a good idea.
Patch by Herve W. H PPP O PPP W PPP aka PPP V+ffmpeg AH gmail PPP com
Original thread:
Date: Jun 29, 2006 1:21 PM
Subject: [Ffmpeg-devel] [PATCH] minor improvements to libavcodec/mem.c


Modified: trunk/libavcodec/mem.c
==============================================================================
--- trunk/libavcodec/mem.c	(original)
+++ trunk/libavcodec/mem.c	Fri Jun 30 10:00:01 2006
@@ -50,11 +50,13 @@
 #endif
 
     /* let's disallow possible ambiguous cases */
-    if(size > INT_MAX)
+    if(size > (INT_MAX-16) )
         return NULL;
 
 #ifdef MEMALIGN_HACK
-    ptr = malloc(size+16+1);
+    ptr = malloc(size+16);
+    if(!ptr)
+        return ptr;
     diff= ((-(long)ptr - 1)&15) + 1;
     ptr += diff;
     ((char*)ptr)[-1]= diff;
@@ -104,7 +106,7 @@
 #endif
 
     /* let's disallow possible ambiguous cases */
-    if(size > INT_MAX)
+    if(size > (INT_MAX-16) )
         return NULL;
 
 #ifdef MEMALIGN_HACK




More information about the ffmpeg-cvslog mailing list