Mercurial > audlegacy
changeset 2605:1ceaf00f9c6d trunk
[svn] - fix handling of multiple files on the command line.
author | nenolod |
---|---|
date | Sat, 03 Mar 2007 22:34:27 -0800 |
parents | 11ed1827fe10 |
children | 7c19bb5516db |
files | ChangeLog src/audacious/build_stamp.c src/audacious/main.c |
diffstat | 3 files changed, 43 insertions(+), 26 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Sat Mar 03 14:56:49 2007 -0800 +++ b/ChangeLog Sat Mar 03 22:34:27 2007 -0800 @@ -1,3 +1,13 @@ +2007-03-03 22:56:49 +0000 Michael Farber <01mf02@gmail.com> + revision [4218] + - Cleaned up file info popup stuff + + + trunk/src/audacious/ui_fileinfopopup.c | 204 ++++++++++++++++----------------- + trunk/src/audacious/util.h | 3 + 2 files changed, 104 insertions(+), 103 deletions(-) + + 2007-03-03 14:08:20 +0000 William Pitcock <nenolod@sacredspiral.co.uk> revision [4216] - workaround freebsd make problems. closes #827.
--- a/src/audacious/build_stamp.c Sat Mar 03 14:56:49 2007 -0800 +++ b/src/audacious/build_stamp.c Sat Mar 03 22:34:27 2007 -0800 @@ -1,2 +1,2 @@ #include <glib.h> -const gchar *svn_stamp = "20070303-4216"; +const gchar *svn_stamp = "20070303-4218";
--- a/src/audacious/main.c Sat Mar 03 14:56:49 2007 -0800 +++ b/src/audacious/main.c Sat Mar 03 22:34:27 2007 -0800 @@ -890,6 +890,7 @@ { gint pos = 0; gint i = 0; + GList *fns = NULL; for (i = 0; filenames[i] != NULL; i++) { @@ -901,39 +902,45 @@ else filename = g_build_filename(current_dir, filenames[i], NULL); - if (options->load_skins) - { - xmms_remote_set_skin(session, filename); - skin_install_skin(filename); - } - else - { - if (options->enqueue_to_temp) - xmms_remote_playlist_enqueue_to_temp(session, filename); + fns = g_list_prepend(fns, filename); - if (options->enqueue && options->play) - pos = xmms_remote_get_playlist_length(session); + g_free(current_dir); + } + + fns = g_list_reverse(fns); - if (!options->enqueue) - { - xmms_remote_playlist_clear(session); - xmms_remote_stop(session); - } + if (options->load_skins) + { + xmms_remote_set_skin(session, filenames[0]); + skin_install_skin(filenames[0]); + } + else + { + if (options->enqueue_to_temp) + xmms_remote_playlist_enqueue_to_temp(session, filenames[0]); - xmms_remote_playlist_add_url_string(session, filename); + if (options->enqueue && options->play) + pos = xmms_remote_get_playlist_length(session); - if (options->enqueue && options->play && - xmms_remote_get_playlist_length(session) > pos) - xmms_remote_set_playlist_pos(session, pos); - - if (!options->enqueue) - xmms_remote_play(session); + if (!options->enqueue) + { + xmms_remote_playlist_clear(session); + xmms_remote_stop(session); } - g_free(filename); - g_free(current_dir); + xmms_remote_playlist_add(session, fns); + + if (options->enqueue && options->play && + xmms_remote_get_playlist_length(session) > pos) + xmms_remote_set_playlist_pos(session, pos); + + if (!options->enqueue) + xmms_remote_play(session); } + g_list_foreach(fns, (GFunc) g_free, NULL); + g_list_free(fns); + g_strfreev(filenames); }