]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mem.c
remove non portable get/put_be64_double()
[ffmpeg] / libavcodec / mem.c
index 9eaa09ed62dbe4bd860528cc64611e9dd2135262..462d674e451166642c49da6f171a37d628dbd9cb 100644 (file)
 void *av_malloc(unsigned int size)
 {
     void *ptr;
-    
 #ifdef MEMALIGN_HACK
     int diff;
+#endif
+
+    /* lets disallow possible ambiguous cases */
+    if(size > INT_MAX)
+        return NULL;
+    
+#ifdef MEMALIGN_HACK
     ptr = malloc(size+16+1);
     diff= ((-(int)ptr - 1)&15) + 1;
     ptr += diff;
@@ -94,8 +100,15 @@ void *av_malloc(unsigned int size)
 void *av_realloc(void *ptr, unsigned int size)
 {
 #ifdef MEMALIGN_HACK
-    //FIXME this isnt aligned correctly though it probably isnt needed
     int diff;
+#endif
+
+    /* lets disallow possible ambiguous cases */
+    if(size > INT_MAX)
+        return NULL;
+
+#ifdef MEMALIGN_HACK
+    //FIXME this isnt aligned correctly though it probably isnt needed
     if(!ptr) return av_malloc(size);
     diff= ((char*)ptr)[-1];
     return realloc(ptr - diff, size + diff) + diff;