ChangeLog: Makefile.am
rm -f -- "$@"
cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
- ln -sf doc/ChangeLog-2008 "$@"
+ ln -sf doc/ChangeLog-2009 "$@"
###############################################################################
# MacOS X project
MINIZIP_LIBS="-lminizip -lz"
], [
have_minizip=no
- MINIZIP_CFLAGS="-I../../../@top_srcdir@//libs/unzip"
- MINIZIP_LIBS="../../../libs/unzip/libunzip.la"
+ MINIZIP_CFLAGS="-I\\\${top_srcdir}/libs/unzip"
+ MINIZIP_LIBS="\\\${top_builddir}/libs/unzip/libunzip.la"
])
])
VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS])
AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
AS_IF([test "${enable_loader}" = "yes"],
[ VLC_ADD_PLUGIN([dmo])
- VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/libs/loader])
- VLC_ADD_LIBS([dmo],[../../../libs/loader/libloader.la -lpthread])
- VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/libs/loader])
- VLC_ADD_LIBS([quicktime],[../../libs/loader/libloader.la -lpthread])
- VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/libs/loader -DLOADER])
- VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la])
- VLC_ADD_CPPFLAGS([realvideo],[-I../../@top_srcdir@/libs/loader -DLOADER])
- VLC_ADD_LIBS([realvideo],[../../libs/loader/libloader.la])
+ VLC_ADD_CPPFLAGS([dmo],[-I\\\${top_srcdir}/libs/loader])
+ VLC_ADD_LIBS([dmo],[\\\${top_builddir}/libs/loader/libloader.la -lpthread])
+ VLC_ADD_CPPFLAGS([quicktime],[-I\\\${top_srcdir}/libs/loader])
+ VLC_ADD_LIBS([quicktime],[\\\${top_builddir}/libs/loader/libloader.la -lpthread])
+ VLC_ADD_CPPFLAGS([realaudio],[-I\\\${top_srcdir}/libs/loader -DLOADER])
+ VLC_ADD_LIBS([realaudio],[\\\${top_builddir}/libs/loader/libloader.la])
+ VLC_ADD_CPPFLAGS([realvideo],[-I\\\${top_srcdir}/libs/loader -DLOADER])
+ VLC_ADD_LIBS([realvideo],[\\\${top_builddir}/libs/loader/libloader.la])
])
AC_ARG_WITH(,[Components:])
dnl
dnl Handle substvars that use $(top_srcdir)
dnl
-VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
+VLC_CONFIG="top_srcdir=\"\$(top_srcdir)\" top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
AC_SUBST(VLC_CONFIG)
CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}"
ChangeLog-2006 \
ChangeLog-2007 \
ChangeLog-2008 \
+ ChangeLog-2009 \
$(NULL)
man1_MANS = \
fi
# This one needs to be rebuilt all the time :)
-.PHONY: ChangeLog-2008 changelogs doc
+.PHONY: ChangeLog-2009 changelogs doc
changelogs: $(CHANGELOGS)
set_callbacks( Open, Close )
add_integer( "hotkeys-mousewheel-mode", MOUSEWHEEL_VOLUME, NULL,
- N_("MouseWheel x-axe Control"),
- N_("MouseWheel x-axe can control volume, position or "
+ N_("MouseWheel x-axis Control"),
+ N_("MouseWheel x-axis can control volume, position or "
"mousewheel event can be ignored"), false )
change_integer_list( i_mode_list, psz_mode_list_text, NULL )
static void PlaylistDestroy( intf_thread_t * );
static int PlaylistChanged( vlc_object_t *, const char *, vlc_value_t,
vlc_value_t, void * );
-static inline bool PlaylistIsPlaying( intf_thread_t *,
- playlist_item_t * );
-static void FindIndex ( intf_thread_t * );
+static inline bool PlaylistIsPlaying( playlist_t *, playlist_item_t * );
+static void FindIndex ( intf_thread_t *, playlist_t * );
static void SearchPlaylist ( intf_thread_t *, char * );
static int SubSearchPlaylist( intf_thread_t *, char *, int, int );
{
intf_thread_t *p_intf = (intf_thread_t *)p_this;
intf_sys_t *p_sys;
- vlc_value_t val;
/* Allocate instance and initialize some members */
p_sys = p_intf->p_sys = malloc( sizeof( intf_sys_t ) );
p_sys->b_box_cleared = false;
}
+ PL_LOCK;
if( p_sys->b_box_plidx_follow && playlist_CurrentPlayingItem(p_playlist) )
{
- FindIndex( p_intf );
+ PL_UNLOCK;
+ FindIndex( p_intf, p_playlist );
}
+ else
+ PL_UNLOCK;
while( ( i_key = wgetch( p_sys->w ) ) != -1 )
{
/* Playlist navigation */
case 'g':
- FindIndex( p_intf );
+ FindIndex( p_intf, p_playlist );
break;
case KEY_HOME:
p_sys->i_box_plidx = 0;
int i_max = p_sys->i_plist_entries;
if( p_sys->i_box_plidx >= i_max ) p_sys->i_box_plidx = i_max - 1;
if( p_sys->i_box_plidx < 0 ) p_sys->i_box_plidx = 0;
- if( PlaylistIsPlaying( p_intf,
- p_sys->pp_plist[p_sys->i_box_plidx]->p_item ) )
+
+ PL_LOCK;
+ if( PlaylistIsPlaying( p_playlist,
+ p_sys->pp_plist[p_sys->i_box_plidx]->p_item ) )
b_box_plidx_follow = true;
+ PL_UNLOCK;
p_sys->b_box_plidx_follow = b_box_plidx_follow;
ReturnTrue;
}
playlist_item_t *p_parent = p_sys->p_node;
if( !p_parent )
- p_parent = playlist_CurrentPlayingItem(p_playlist) ? playlist_CurrentPlayingItem(p_playlist)->p_parent : NULL;
- if( !p_parent )
- p_parent = p_playlist->p_local_onelevel;
+ {
+ PL_LOCK;
+ p_parent = playlist_CurrentPlayingItem(p_playlist) ? playlist_CurrentPlayingItem(p_playlist)->p_parent : NULL;
+ PL_UNLOCK;
+ if( !p_parent )
+ p_parent = p_playlist->p_local_onelevel;
+ }
while( p_parent->p_parent && p_parent->p_parent->p_parent )
p_parent = p_parent->p_parent;
}
if( p_sys->b_box_plidx_follow )
{
- FindIndex( p_intf );
+ FindIndex( p_intf, p_playlist );
}
if( p_sys->i_box_plidx < 0 ) p_sys->i_box_plidx = 0;
playlist_item_t *p_item = p_sys->pp_plist[i_item]->p_item;
playlist_item_t *p_node = p_sys->p_node;
int c = ' ';
+ input_thread_t *p_input2 = playlist_CurrentInput( p_playlist );
+
+ PL_LOCK;
if( ( p_node && p_item->p_input == p_node->p_input ) ||
- ( !p_node && playlist_CurrentInput( p_playlist ) &&
+ ( !p_node && p_input2 &&
p_item->p_input == playlist_CurrentPlayingItem(p_playlist)->p_input ) )
c = '*';
else if( p_item == p_node || ( p_item != p_node &&
- PlaylistIsPlaying( p_intf, p_item ) ) )
+ PlaylistIsPlaying( p_playlist, p_item ) ) )
c = '>';
+ PL_UNLOCK;
if( y >= y_end ) break;
if( b_selected )
}
/* Playlist suxx */
-static inline bool PlaylistIsPlaying( intf_thread_t *p_intf,
- playlist_item_t *p_item )
+/* This function have to be called with the playlist locked */
+static inline bool PlaylistIsPlaying( playlist_t *p_playlist,
+ playlist_item_t *p_item )
{
- playlist_t *p_playlist = pl_Hold( p_intf );
- playlist_item_t *p_played_item = playlist_CurrentPlayingItem(p_playlist);
- vlc_object_release( p_playlist );
+ playlist_item_t *p_played_item = playlist_CurrentPlayingItem( p_playlist );
return( p_item != NULL && p_played_item != NULL &&
p_item->p_input != NULL && p_played_item->p_input != NULL &&
p_item->p_input->i_id == p_played_item->p_input->i_id );
}
-static void FindIndex( intf_thread_t *p_intf )
+static void FindIndex( intf_thread_t *p_intf, playlist_t *p_playlist )
{
intf_sys_t *p_sys = p_intf->p_sys;
int i;
if( p_sys->i_box_plidx < p_sys->i_plist_entries && p_sys->i_box_plidx >= 0 )
{
playlist_item_t *p_item = p_sys->pp_plist[p_sys->i_box_plidx]->p_item;
+ PL_LOCK;
if( ( p_item->i_children == 0 && p_item == p_sys->p_node ) ||
- PlaylistIsPlaying( p_intf, p_item ) )
+ PlaylistIsPlaying( p_playlist, p_item ) )
+ {
+ PL_UNLOCK;
return;
+ }
}
for( i = 0; i < p_sys->i_plist_entries; i++ )
{
playlist_item_t *p_item = p_sys->pp_plist[i]->p_item;
if( ( p_item->i_children == 0 && p_item == p_sys->p_node ) ||
- PlaylistIsPlaying( p_intf, p_sys->pp_plist[i]->p_item ) )
+ PlaylistIsPlaying( p_playlist, p_sys->pp_plist[i]->p_item ) )
{
p_sys->i_box_plidx = i;
break;
}
}
+ PL_UNLOCK;
}
static void PlaylistDestroy( intf_thread_t *p_intf )
struct stat stat_data;
#endif
struct dir_entry_t *p_dir_entry;
- int i_size_entry = strlen( p_sys->psz_current_dir ) +
- strlen( psz_entry ) + 2;
char *psz_uri;
if( p_sys->b_show_hidden_files == false &&
/*****************************************************************************
* notify.c : libnotify notification plugin
*****************************************************************************
- * Copyright (C) 2006-2007 the VideoLAN team
+ * Copyright (C) 2006-2009 the VideoLAN team
* $Id$
*
* Authors: Christophe Mutricy <xtophe -at- videolan -dot- org>
set_shortname( N_( "Notify" ) )
set_description( N_("LibNotify Notification Plugin") )
- add_integer( "notify-timeout", 4000,NULL,
+ add_integer( "notify-timeout", 4000, NULL,
TIMEOUT_TEXT, TIMEOUT_LONGTEXT, true )
set_capability( "interface", 0 )
}
else /* else we show state-of-the art logo */
{
- const char *data_path = config_GetDataDir ();
- char buf[strlen (data_path) + sizeof ("/vlc48x48.png")];
-
- snprintf (buf, sizeof (buf), "%s/vlc48x48.png", data_path);
- pix = gdk_pixbuf_new_from_file( buf, &p_error );
+ char *psz_pixbuf;
+ if( asprintf( &psz_pixbuf, "%s/vlc48x48.png", config_GetDataDir() ) >= 0 )
+ {
+ pix = gdk_pixbuf_new_from_file( psz_pixbuf, &p_error );
+ free( psz_pixbuf );
+ }
}
/* we need to replace '&' with '&' because '&' is a keyword of
httpd_handler_callback_t cb,
httpd_handler_sys_t *data)
{
- (void) host; (void) url; (void) content_type;
+ (void) host; (void) url;
(void) login; (void) password; (void) acl;
(void) cb; (void) data;
assert (0);