static void ThreadWrite( vlc_object_t * );
static block_t *NewUDPPacket( sout_access_out_t *, mtime_t );
-static const char *MakeRandMulticast (int family, char *buf, size_t buflen);
typedef struct sout_access_thread_t
{
}
if( !( p_sys = calloc ( 1, sizeof( sout_access_out_sys_t ) ) ) )
- {
- msg_Err( p_access, "not enough memory" );
return VLC_ENOMEM;
- }
p_access->p_sys = p_sys;
i_dst_port = DEFAULT_PORT;
char *psz_parser = psz_dst_addr = strdup( p_access->psz_path );
+ if( !psz_dst_addr )
+ {
+ free( p_sys );
+ return VLC_ENOMEM;
+ }
if (psz_parser[0] == '[')
psz_parser = strchr (psz_parser, ']');
vlc_object_create( p_access, sizeof( sout_access_thread_t ) );
if( !p_sys->p_thread )
{
- msg_Err( p_access, "out of memory" );
free (p_sys);
free (psz_dst_addr);
return VLC_ENOMEM;
mtime_t i_to_send = p_thread->i_group;
int i_dropped_packets = 0;
- while( !p_thread->b_die )
+ while( vlc_object_alive (p_thread) )
{
block_t *p_pk;
mtime_t i_date, i_sent;