* Local structures
*****************************************************************************/
-typedef struct host_s {
+typedef struct dhost_s {
char *psz_name;
int i_id;
DAAP_ClientHost_DatabaseItem *p_songs;
int i_songs;
-} host_t;
+} dhost_t;
typedef struct daap_db_s {
- host_t **pp_hosts;
- int i_hosts;
+ dhost_t **pp_hosts;
+ int i_hosts;
int i_last_id;
struct access_sys_t {
vlc_url_t url;
- host_t *p_host;
+ dhost_t *p_host;
int i_host;
int i_song;
DAAP_SClientHost *p_host,
void *p_context );
static void OnHostsUpdate( services_discovery_t *p_sd );
- static void ProcessHost( services_discovery_t *p_sd, host_t *p_host );
- static void FreeHost( services_discovery_t *p_sd, host_t *p_host );
+ static void ProcessHost( services_discovery_t *p_sd, dhost_t *p_host );
+ static void FreeHost( services_discovery_t *p_sd, dhost_t *p_host );
static int Control( access_t *p_access, int i_query, va_list args );
static int Read( access_t *, uint8_t *, int );
{
if( p_sd->p_sys->p_db->pp_hosts[i]->b_updated == VLC_FALSE )
{
- host_t *p_host = p_sd->p_sys->p_db->pp_hosts[i];
+ dhost_t *p_host = p_sd->p_sys->p_db->pp_hosts[i];
FreeHost( p_sd, p_host );
REMOVE_ELEM( p_sd->p_sys->p_db->pp_hosts,
p_sd->p_sys->p_db->i_hosts, i );
if( !b_found )
{
- host_t *p_vlchost = (host_t *)malloc( sizeof( host_t ) );
+ dhost_t *p_vlchost = (dhost_t *)malloc( sizeof( dhost_t ) );
p_vlchost->p_host = p_host;
p_vlchost->psz_name = psz_buffer;
p_vlchost->b_new = VLC_TRUE;
+ p_vlchost->b_updated = VLC_TRUE;
INSERT_ELEM( p_sys->p_db->pp_hosts, p_sys->p_db->i_hosts,
p_sys->p_db->i_hosts, p_vlchost );
}
return VLC_SUCCESS;
}
-static void ProcessHost( services_discovery_t *p_sd, host_t *p_host )
+static void ProcessHost( services_discovery_t *p_sd, dhost_t *p_host )
{
int i_dbsize, i_db, i, i_songsize, i_ret;
int i_size = DAAP_ClientHost_GetSharename( p_host->p_host, NULL, 0 );
DAAP_ClientHost_Database *p_database = malloc( i_dbsize );
DAAP_ClientHost_GetDatabases( p_host->p_host, p_database, &i_db, i_dbsize );
+
if( !i_db || !p_database )
{
msg_Warn( p_sd, "no database on DAAP host %s", p_host->psz_name );
p_host->p_songs[i].id );
p_item = playlist_ItemNew( p_sd, psz_buff,
p_host->p_songs[i].itemname );
- vlc_input_item_AddInfo( &p_item->input, _("Meta-Information"),
+ vlc_input_item_AddInfo( &p_item->input, _("Meta-information"),
_("Artist"), p_host->p_songs[i].songartist );
- vlc_input_item_AddInfo( &p_item->input, _("Meta-Information"),
+ vlc_input_item_AddInfo( &p_item->input, _("Meta-information"),
_("Album"), p_host->p_songs[i].songalbum );
playlist_NodeAddItem( p_playlist, p_item, VIEW_CATEGORY,
vlc_object_release( p_playlist );
}
-static void FreeHost( services_discovery_t *p_sd, host_t *p_host )
+static void FreeHost( services_discovery_t *p_sd, dhost_t *p_host )
{
playlist_t *p_playlist;