1 /*****************************************************************************
3 *****************************************************************************
4 * Copyright (C) 2011-2014 L-SMASH project
6 * Authors: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
8 * Permission to use, copy, modify, and/or distribute this software for any
9 * purpose with or without fee is hereby granted, provided that the above
10 * copyright notice and this permission notice appear in all copies.
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
13 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
14 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
15 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
16 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
17 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
18 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
19 *****************************************************************************/
21 /* This file is available under an ISC license. */
23 #include "internal.h" /* must be placed first */
28 void *lsmash_malloc( size_t size
)
30 return malloc( size
);
33 void *lsmash_malloc_zero( size_t size
)
37 void *p
= malloc( size
);
44 void *lsmash_realloc( void *ptr
, size_t size
)
46 return realloc( ptr
, size
);
49 void *lsmash_memdup( const void *ptr
, size_t size
)
51 if( !ptr
|| size
== 0 )
53 void *dst
= malloc( size
);
56 memcpy( dst
, ptr
, size
);
60 void lsmash_free( void *ptr
)
62 /* free() shall do nothing if a given address is NULL. */
66 void lsmash_freep( void *ptrptr
)
70 void **ptr
= (void **)ptrptr
;