Changeset 450a2fb53d96f11f7438f9ecdb6225bdaf2ab1c2

Show
Ignore:
Timestamp:
25/05/06 21:38:45 (3 years ago)
Author:
Clément Stenac <zorglub@videolan.org>
git-committer:
Clément Stenac <zorglub@videolan.org> 1148585925 +0000
git-parent:

[05b21e9603158b8e145eaa776bf088db6594eb33]

git-author:
Clément Stenac <zorglub@videolan.org> 1148585925 +0000
Message:

Fix CDDA and a corner-case in playlist handling

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • configure.ac

    r8e7484b r450a2fb  
    54955495  modules/gui/macosx/Makefile 
    54965496  modules/gui/qnx/Makefile 
     5497  modules/gui/qt4/Makefile 
    54975498  modules/gui/skins2/Makefile 
    54985499  modules/gui/wxwidgets/Makefile 
  • modules/access/cdda.c

    r38f9675 r450a2fb  
    236236            { 
    237237                msg_Dbg( p_playlist, "unable to find item in playlist"); 
    238                return -1; 
     238                return -1; 
    239239            } 
    240240            b_play = VLC_FALSE; 
     
    292292    if( b_play ) 
    293293    { 
    294         playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, 
    295                           p_playlist->status.p_item, NULL ); 
     294          playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, 1242, 
     295                            p_playlist->request.p_node, NULL ); 
     296//        playlist_Play( p_playlist ); 
    296297    } 
    297298 
     
    536537    int i; 
    537538    input_item_t *p_input_item; 
     539    playlist_item_t *p_item_in_category; 
    538540    char *psz_name; 
    539541    p_sys->i_titles = ioctl_GetTracksMap( VLC_OBJECT(p_access), 
     
    552554    if( b_separate ) 
    553555    { 
    554         if( p_parent->i_children == -1 ) 
    555         { 
    556             playlist_LockItemToNode( p_playlist, p_parent ); 
    557         } 
     556        p_item_in_category = playlist_LockItemToNode( p_playlist, p_parent ); 
    558557        psz_name = strdup( "Audio CD" ); 
    559558        vlc_mutex_lock( &p_playlist->object_lock ); 
     
    649648            } 
    650649#endif 
    651             playlist_BothAddInput( p_playlist, p_input_item, p_parent, 
    652                                    PLAYLIST_APPEND, PLAYLIST_END ); 
     650            playlist_AddWhereverNeeded( p_playlist, p_input_item, p_parent, 
     651                               p_item_in_category, VLC_FALSE, PLAYLIST_APPEND ); 
    653652            free( psz_uri ); free( psz_opt ); free( psz_name ); 
    654653        } 
  • src/playlist/control.c

    rc21acbb r450a2fb  
    114114        if ( p_node == NULL ) 
    115115        { 
    116             p_playlist->status.i_status = PLAYLIST_STOPPED; 
    117             p_playlist->request.b_request = VLC_TRUE; 
    118             msg_Err( p_playlist, "null node" ); 
    119             return VLC_SUCCESS; 
     116            p_node = p_playlist->status.p_node; 
     117            if( !p_node ) 
     118            { 
     119                p_playlist->status.i_status = PLAYLIST_STOPPED; 
     120                p_playlist->request.b_request = VLC_TRUE; 
     121                msg_Err( p_playlist, "null node" ); 
     122                return VLC_SUCCESS; 
     123            } 
    120124        } 
    121125        p_playlist->request.i_status = PLAYLIST_RUNNING; 
  • src/playlist/engine.c

    rc21acbb r450a2fb  
    232232            { 
    233233                 playlist_ItemDelete( p_playlist->status.p_item ); 
     234                 if( p_playlist->request.p_item == p_playlist->status.p_item ) 
     235                     p_playlist->request.p_item = NULL; 
    234236                 p_playlist->status.p_item = NULL; 
    235237            }