#include <vlc_common.h>
#include "http.h"
#include <vlc_strings.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/stat.h>
/****************************************************************************
* File and directory functions
/* just load the file */
*pi_data = 0;
- *pp_data = malloc( 1025 ); /* +1 for \0 */
+ *pp_data = xmalloc( 1025 ); /* +1 for \0 */
+
while( ( i_read = fread( &(*pp_data)[*pi_data], 1, 1024, f ) ) == 1024 )
{
*pi_data += 1024;
- *pp_data = realloc( *pp_data, *pi_data + 1025 );
+ *pp_data = xrealloc( *pp_data, *pi_data + 1025 );
}
if( i_read > 0 )
{
}
if( f == NULL )
{
- f = malloc( sizeof( httpd_file_sys_t ) );
+ f = xmalloc( sizeof( httpd_file_sys_t ) );
f->b_handler = false;
}
char *p;
int i_len = strlen(psz_src);
- psz_dir = malloc( i_len + 2 );
+ psz_dir = xmalloc( i_len + 2 );
strcpy( psz_dir, psz_src );
/* Add a trailing sep to ease the .. step */
if( psz_dir[0] == '~' )
{
char *home = config_GetUserDir( VLC_HOME_DIR ), *dir;
- asprintf( &dir, "%s%s", home, psz_dir + 1 );
- free( psz_dir );
+ if( asprintf( &dir, "%s%s", home, psz_dir + 1 ) != -1 )
+ {
+ free( psz_dir );
+ psz_dir = dir;
+ }
free( home );
- psz_dir = dir;
}
if( strlen(psz_dir) > 2 )