#ifndef _LIBVLC_MEDIA_LIST_PATH_H
#define _LIBVLC_MEDIA_LIST_PATH_H 1
+#include <assert.h>
+#include <vlc_memory.h>
+
typedef int * libvlc_media_list_path_t; /* (Media List Player Internal) */
/**************************************************************************
static inline libvlc_media_list_path_t libvlc_media_list_path_empty( void )
{
libvlc_media_list_path_t ret = malloc(sizeof(int));
+ assert( ret );
ret[0] = -1;
return ret;
}
static inline libvlc_media_list_path_t libvlc_media_list_path_with_root_index( int index )
{
libvlc_media_list_path_t ret = malloc(sizeof(int)*2);
+ assert( ret );
ret[0] = index;
ret[1] = -1;
return ret;
static inline void libvlc_media_list_path_append( libvlc_media_list_path_t * p_path, int index )
{
int old_depth = libvlc_media_list_path_depth( *p_path );
- *p_path = realloc( *p_path, sizeof(int)*(old_depth+2));
+ *p_path = realloc_or_free( *p_path, sizeof(int)*(old_depth+2));
+ assert( *p_path );
*p_path[old_depth] = index;
*p_path[old_depth+1] = -1;
}
libvlc_media_list_path_t ret;
int old_depth = libvlc_media_list_path_depth( path );
ret = malloc( sizeof(int) * (old_depth + 2) );
+ assert( ret );
memcpy( ret, path, sizeof(int) * old_depth );
ret[old_depth] = index;
ret[old_depth+1] = -1;
libvlc_media_list_path_t ret;
int depth = libvlc_media_list_path_depth( path );
ret = malloc( sizeof(int)*(depth+1) );
+ assert( ret );
memcpy( ret, path, sizeof(int)*(depth+1) );
return ret;
}
#endif
#include <vlc_common.h>
+#include <vlc_memory.h>
#include <ctype.h>
|| i_read == 0 )
break;
*pi_data += i_read;
- *pp_data = realloc( *pp_data, *pi_data + 1025 );
+ *pp_data = realloc_or_free( *pp_data, *pi_data + 1025 );
+ assert( *pp_data );
}
while ( !p_object->b_die
#include <vlc_aout.h>
#include <vlc_fourcc.h>
+#include <vlc_memory.h>
+
#include "input_internal.h"
#include "clock.h"
#include "decoder.h"
if( p_fmt->i_extra )
{
es->fmt.i_extra = p_fmt->i_extra;
- es->fmt.p_extra = realloc( es->fmt.p_extra, p_fmt->i_extra );
+ es->fmt.p_extra = realloc_or_free( es->fmt.p_extra,
+ p_fmt->i_extra );
+ assert( es->fmt.p_extra );
memcpy( es->fmt.p_extra, p_fmt->p_extra, p_fmt->i_extra );
if( !es->p_dec )
#else
es->p_dec->fmt_in.i_extra = p_fmt->i_extra;
es->p_dec->fmt_in.p_extra =
- realloc( es->p_dec->fmt_in.p_extra, p_fmt->i_extra );
+ realloc_or_free( es->p_dec->fmt_in.p_extra, p_fmt->i_extra );
+ assert( es->p_dec->fmt_in.p_extra );
memcpy( es->p_dec->fmt_in.p_extra,
p_fmt->p_extra, p_fmt->i_extra );
#endif
#endif
#include <vlc_common.h>
+#include <vlc_memory.h>
#include <ctype.h>
#include <limits.h>
input_attachment_t **attachment = *ppp_attachment;
int i;
- attachment = realloc( attachment,
- sizeof(input_attachment_t**) * ( i_attachment + i_new ) );
+ attachment = realloc_or_free( attachment,
+ sizeof(input_attachment_t**) * ( i_attachment + i_new ) );
+ assert( attachment );
for( i = 0; i < i_new; i++ )
attachment[i_attachment++] = pp_new[i];
free( pp_new );
#include <vlc_strings.h>
#include <vlc_osd.h>
#include <vlc_charset.h>
+#include <vlc_memory.h>
#include <libvlc.h>
/* We need to create a local copy */
if( p_sys->i_peek < i_read )
{
- p_sys->p_peek = realloc( p_sys->p_peek, i_read );
+ p_sys->p_peek = realloc_or_free( p_sys->p_peek, i_read );
if( !p_sys->p_peek )
{
p_sys->i_peek = 0;
if( p_sys->i_peek < i_read )
{
- p_sys->p_peek = realloc( p_sys->p_peek, i_read );
+ p_sys->p_peek = realloc_or_free( p_sys->p_peek, i_read );
if( !p_sys->p_peek )
{
p_sys->i_peek = 0;
if( psz_eol )
{
i_data = (psz_eol - (char *)p_data) + 1;
- p_line = realloc( p_line, i_line + i_data + s->p_text->i_char_width ); /* add \0 */
+ p_line = realloc_or_free( p_line,
+ i_line + i_data + s->p_text->i_char_width ); /* add \0 */
if( !p_line )
goto error;
i_data = stream_Read( s, &p_line[i_line], i_data );
}
/* Read data (+1 for easy \0 append) */
- p_line = realloc( p_line, i_line + STREAM_PROBE_LINE + s->p_text->i_char_width );
+ p_line = realloc_or_free( p_line,
+ i_line + STREAM_PROBE_LINE + s->p_text->i_char_width );
if( !p_line )
goto error;
i_data = stream_Read( s, &p_line[i_line], STREAM_PROBE_LINE );
#endif
#include <vlc_common.h>
+#include <vlc_memory.h>
#include <stdio.h>
#include <ctype.h> /* tolower() */
psz_line = strdup( ppsz_property[i] );
for( j = i+1; j < i_property; j++ )
{
- psz_line = realloc( psz_line, strlen(psz_line) + strlen(ppsz_property[j]) + 1 + 1 );
+ psz_line = realloc_or_free( psz_line,
+ strlen(psz_line) + strlen(ppsz_property[j]) + 1 + 1 );
+ assert( psz_line );
strcat( psz_line, " " );
strcat( psz_line, ppsz_property[j] );
}
#endif
#include <vlc_common.h>
+#include <vlc_memory.h>
#include <stdarg.h> /* va_list for BSD */
}
msg_item_t * p_item = malloc (sizeof (*p_item));
-
if (p_item == NULL)
return; /* Uho! */
if( psz_header )
{
psz_old = strdup( psz_header );
- psz_header = (char*)realloc( psz_header, i_header_size );
+ psz_header = realloc_or_free( psz_header, i_header_size );
+ assert( psz_header );
snprintf( psz_header, i_header_size , "[%s] %s",
p_obj->psz_header, psz_old );
}
else
{
- psz_header = (char *)malloc( i_header_size );
+ psz_header = malloc( i_header_size );
+ assert( psz_header );
snprintf( psz_header, i_header_size, "[%s]",
p_obj->psz_header );
}
#endif
#include <vlc_common.h>
+#include <vlc_memory.h>
#include "../libvlc.h"
#include <vlc_aout.h>
static vlc_list_t * NewList( int i_count )
{
- vlc_list_t * p_list = (vlc_list_t *)malloc( sizeof( vlc_list_t ) );
+ vlc_list_t * p_list = malloc( sizeof( vlc_list_t ) );
if( p_list == NULL )
- {
return NULL;
- }
p_list->i_count = i_count;
return;
}
- p_list->p_values = realloc( p_list->p_values, (p_list->i_count + 1)
- * sizeof( vlc_value_t ) );
+ p_list->p_values = realloc_or_free( p_list->p_values,
+ (p_list->i_count + 1) * sizeof( vlc_value_t ) );
if( p_list->p_values == NULL )
{
p_list->i_count = 0;
#include <vlc_common.h>
#include <vlc_charset.h>
+#include <vlc_memory.h>
#include "variables.h"
#include "libvlc.h"
if( (p_priv->i_vars & 15) == 15 )
{
- p_priv->p_vars = realloc( p_priv->p_vars,
+ p_priv->p_vars = realloc_or_free( p_priv->p_vars,
(p_priv->i_vars+17) * sizeof(variable_t) );
+ assert( p_priv->p_vars );
}
memmove( p_priv->p_vars + i_new + 1,
if( (p_priv->i_vars & 15) == 0 )
{
- p_priv->p_vars = realloc( p_priv->p_vars,
- (p_priv->i_vars) * sizeof( variable_t ) );
+ variable_t *p_vars = realloc( p_priv->p_vars,
+ (p_priv->i_vars) * sizeof( variable_t ) );
+ if( p_vars )
+ p_priv->p_vars = p_vars;
}
p_priv->i_vars--;
#include <vlc_common.h>
#include <vlc_plugin.h>
+#include <vlc_memory.h>
#include <assert.h>
#include <stdarg.h>
if ((confsize & 0xf) == 0)
{
- tab = realloc (tab, (confsize + 17) * sizeof (*tab));
+ tab = realloc_or_free (tab, (confsize + 17) * sizeof (*tab));
if (tab == NULL)
return NULL;
#include <vlc_common.h>
#include <vlc_plugin.h>
+#include <vlc_memory.h>
#include "libvlc.h"
#include <stdlib.h> /* free(), strtol() */
/* Add entry to cache */
module_cache_t **pp_cache = p_bank->pp_cache;
- pp_cache = realloc( pp_cache, (p_bank->i_cache + 1) * sizeof(void *) );
+ pp_cache = realloc_or_free( pp_cache, (p_bank->i_cache + 1) * sizeof(void *) );
if( pp_cache == NULL )
return -1;
pp_cache[p_bank->i_cache] = malloc( sizeof(module_cache_t) );
{
p[4] = '\0';
answer->i_body = strlen((char*)answer->p_body) + 1;
- answer->p_body = realloc( answer->p_body, answer->i_body );
+ uint8_t *p_body = realloc( answer->p_body, answer->i_body );
+ if( p_body ) answer->p_body = p_body;
}
}
#endif
#include <vlc_network.h>
+#include <vlc_memory.h>
#ifndef INADDR_ANY
# define INADDR_ANY 0x00000000
if( i_line == i_max )
{
i_max += 1024;
- psz_line = realloc( psz_line, i_max );
+ psz_line = realloc_or_free( psz_line, i_max );
+ assert( psz_line );
ptr = psz_line + i_line;
}
#include <vlc_stream.h>
#include <limits.h>
#include <vlc_art_finder.h>
+#include <vlc_memory.h>
#include "art.h"
#include "fetcher.h"
#include "playlist_internal.h"
-
/*****************************************************************************
* Structures/definitions
*****************************************************************************/
if( i_data >= INT_MAX - i_read )
break;
- p_data = realloc( p_data, i_data + i_read );
+ p_data = realloc_or_free( p_data, i_data + i_read );
if( !p_data )
break;
{ \
int len = strlen( string ); \
dst = realloc( dst, i_size = i_size + len );\
+ assert( dst ); \
memcpy( (dst+d), string, len ); \
d += len; \
free( string ); \
{ \
int len = strlen( string ); \
dst = realloc( dst, i_size = i_size + len );\
+ assert( dst ); \
memcpy( dst+d, string, len ); \
d += len; \
}