[brasero] Fix #597584 - make burning audio cds with brasero work
- From: Philippe Rouquier <philippr src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [brasero] Fix #597584 - make burning audio cds with brasero work
- Date: Wed, 7 Oct 2009 20:27:59 +0000 (UTC)
commit 7857ae2ac9643df91f9bca84a48eca14e0f6a371
Author: Philippe Rouquier <bonfire-app wanadoo fr>
Date: Wed Oct 7 22:22:23 2009 +0200
Fix #597584 - make burning audio cds with brasero work
Patch by Bastien Nocera <hadess hadess net>
Brasero could not parse paths in its project anymore only URIs which broke apps like rhythmbox
src/brasero-project-parse.c | 16 +++++++++++++---
src/main.c | 10 +++++-----
2 files changed, 18 insertions(+), 8 deletions(-)
---
diff --git a/src/brasero-project-parse.c b/src/brasero-project-parse.c
index 95c438d..ffacf46 100644
--- a/src/brasero-project-parse.c
+++ b/src/brasero-project-parse.c
@@ -432,10 +432,13 @@ brasero_project_open_project_xml (const gchar *uri,
xmlDocPtr project;
xmlNodePtr item;
gboolean retval;
+ GFile *file;
gchar *path;
- path = g_filename_from_uri (uri, NULL, NULL);
- if (!path)
+ file = g_file_new_for_commandline_arg (uri);
+ path = g_file_get_path (file);
+ g_object_unref (file);
+ if (!path)
return FALSE;
/* start parsing xml doc */
@@ -571,6 +574,12 @@ brasero_project_open_audio_playlist_project (const gchar *uri,
{
TotemPlParser *parser;
TotemPlParserResult result;
+ GFile *file;
+ char *_uri;
+
+ file = g_file_new_for_commandline_arg (uri);
+ _uri = g_file_get_uri (file);
+ g_object_unref (file);
parser = totem_pl_parser_new ();
g_object_set (parser,
@@ -588,12 +597,13 @@ brasero_project_open_audio_playlist_project (const gchar *uri,
G_CALLBACK (brasero_project_playlist_entry_parsed),
session);
- result = totem_pl_parser_parse (parser, uri, FALSE);
+ result = totem_pl_parser_parse (parser, _uri, FALSE);
if (result != TOTEM_PL_PARSER_RESULT_SUCCESS) {
if (warn_user)
brasero_project_invalid_project_dialog (_("It does not seem to be a valid Brasero project"));
}
+ g_free (_uri);
g_object_unref (parser);
return (result == TOTEM_PL_PARSER_RESULT_SUCCESS);
diff --git a/src/main.c b/src/main.c
index 7de917c..e717ef5 100644
--- a/src/main.c
+++ b/src/main.c
@@ -70,13 +70,13 @@ gint open_ncb;
gint parent_window;
static const GOptionEntry options [] = {
- { "project", 'p', 0, G_OPTION_ARG_STRING, &project_uri,
+ { "project", 'p', 0, G_OPTION_ARG_FILENAME, &project_uri,
N_("Open the specified project"),
N_("PROJECT") },
#ifdef BUILD_PLAYLIST
- { "playlist", 'l', 0, G_OPTION_ARG_STRING, &playlist_uri,
+ { "playlist", 'l', 0, G_OPTION_ARG_FILENAME, &playlist_uri,
N_("Open the specified playlist as an audio project"),
N_("PLAYLIST") },
@@ -94,7 +94,7 @@ static const GOptionEntry options [] = {
N_("Copy a disc"),
N_("PATH TO DEVICE") },
- { "cover", 'j', 0, G_OPTION_ARG_STRING, &cover_project,
+ { "cover", 'j', 0, G_OPTION_ARG_FILENAME, &cover_project,
N_("Cover to use"),
N_("PATH TO COVER") },
@@ -102,7 +102,7 @@ static const GOptionEntry options [] = {
N_("Open a video project adding the URIs given on the command line"),
NULL },
- { "image", 'i', 0, G_OPTION_ARG_STRING, &iso_uri,
+ { "image", 'i', 0, G_OPTION_ARG_FILENAME, &iso_uri,
N_("URI of an image file to burn (autodetected)"),
N_("PATH TO PLAYLIST") },
@@ -122,7 +122,7 @@ static const GOptionEntry options [] = {
N_("Burn the contents of burn:// URI"),
NULL },
- { "burn-and-remove-project", 'r', 0, G_OPTION_ARG_STRING, &burn_project_uri,
+ { "burn-and-remove-project", 'r', 0, G_OPTION_ARG_FILENAME, &burn_project_uri,
N_("Burn the specified project and remove it.\nThis option is mainly useful for integration with other applications."),
N_("PATH") },
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]