diff options
author | Gilles Dartiguelongue <eva@gentoo.org> | 2008-07-31 21:23:45 +0000 |
---|---|---|
committer | Gilles Dartiguelongue <eva@gentoo.org> | 2008-07-31 21:23:45 +0000 |
commit | 05b6005e469caeac5358af25bf1a927ff1842892 (patch) | |
tree | 3b1d4ace925dd2571e339154d36208cbb603e667 /media-sound/sound-juicer/files | |
parent | Reorder package.use.mask (diff) | |
download | gentoo-2-05b6005e469caeac5358af25bf1a927ff1842892.tar.gz gentoo-2-05b6005e469caeac5358af25bf1a927ff1842892.tar.bz2 gentoo-2-05b6005e469caeac5358af25bf1a927ff1842892.zip |
bump to r1, add patch to handle uris, bug #229745.
(Portage version: 2.2_rc3/cvs/Linux 2.6.24-gentoo-r8-mactel x86_64)
Diffstat (limited to 'media-sound/sound-juicer/files')
-rw-r--r-- | media-sound/sound-juicer/files/sound-juicer-2.22.0-sj-handle-uri.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/media-sound/sound-juicer/files/sound-juicer-2.22.0-sj-handle-uri.patch b/media-sound/sound-juicer/files/sound-juicer-2.22.0-sj-handle-uri.patch new file mode 100644 index 000000000000..80026e5f63a7 --- /dev/null +++ b/media-sound/sound-juicer/files/sound-juicer-2.22.0-sj-handle-uri.patch @@ -0,0 +1,61 @@ +Index: src/sj-main.c +=================================================================== +--- src/sj-main.c (revision 2168) ++++ src/sj-main.c (working copy) +@@ -1576,12 +1576,13 @@ + GnomeProgram *program; + GError *error = NULL; + GtkTreeSelection *selection; +- char *device = NULL; ++ char *device = NULL, **uris = NULL; + GOptionContext *ctx; + const GOptionEntry entries[] = { + { "auto-start", 'a', 0, G_OPTION_ARG_NONE, &autostart, N_("Start extracting immediately"), NULL }, + { "play", 'p', 0, G_OPTION_ARG_NONE, &autoplay, N_("Start playing immediately"), NULL}, + { "device", 'd', 0, G_OPTION_ARG_FILENAME, &device, N_("What CD device to read"), N_("DEVICE") }, ++ { G_OPTION_REMAINING, '\0', 0, G_OPTION_ARG_FILENAME_ARRAY, &uris, N_("URI to the CD device to read"), NULL }, + { NULL } + }; + +@@ -1803,10 +1804,26 @@ + eject_changed_cb (gconf_client, -1, gconf_client_get_entry (gconf_client, GCONF_EJECT, NULL, TRUE, NULL), NULL); + open_changed_cb (gconf_client, -1, gconf_client_get_entry (gconf_client, GCONF_OPEN, NULL, TRUE, NULL), NULL); + audio_volume_changed_cb (gconf_client, -1, gconf_client_get_entry (gconf_client, GCONF_AUDIO_VOLUME, NULL, TRUE, NULL), NULL); +- if (device == NULL) { ++ if (device == NULL && uris == NULL) { + device_changed_cb (gconf_client, -1, gconf_client_get_entry (gconf_client, GCONF_DEVICE, NULL, TRUE, NULL), GINT_TO_POINTER (TRUE)); + } else { +- set_device (device, TRUE); ++ if (device) ++ set_device (device, TRUE); ++ else { ++ char *d; ++ ++ /* Mash up the CDDA URIs into a device path */ ++ if (g_str_has_prefix (uris[0], "cdda://")) { ++ guint len; ++ d = g_strdup_printf ("/dev/%s", uris[0] + strlen ("cdda://")); ++ len = strlen (d); ++ d[len - 1] = '\0'; ++ set_device (d, TRUE); ++ g_free (d); ++ } else { ++ device_changed_cb (gconf_client, -1, gconf_client_get_entry (gconf_client, GCONF_DEVICE, NULL, TRUE, NULL), GINT_TO_POINTER (TRUE)); ++ } ++ } + } + + if (sj_extractor_supports_encoding (&error) == FALSE) { +Index: data/sound-juicer.desktop.in.in +=================================================================== +--- data/sound-juicer.desktop.in.in (revision 2168) ++++ data/sound-juicer.desktop.in.in (working copy) +@@ -2,7 +2,7 @@ + Encoding=UTF-8 + _Name=Audio CD Extractor + _Comment=Copy music from your CDs +-Exec=sound-juicer ++Exec=sound-juicer %u + Icon=sound-juicer + StartupNotify=true + MimeType=x-content/audio-cdda; |