gnome-desktop r5012 - trunk/libgnome-desktop
- From: ssp svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-desktop r5012 - trunk/libgnome-desktop
- Date: Wed, 13 Feb 2008 17:26:36 +0000 (GMT)
Author: ssp
Date: Wed Feb 13 17:26:36 2008
New Revision: 5012
URL: http://svn.gnome.org/viewvc/gnome-desktop?rev=5012&view=rev
Log:
2008-02-13 Soren Sandmann <sandmann redhat com>
* gnome-bg.c (gnome_bg_set_uri): If we are passed a filename,
first convert it to a uri since GIO doesn't support paths as
uris.
* gnome-bg.c (handle_text): Convert the filenames to uris.
Fix bug 516269, reported by Sebastian Bacher.
Modified:
trunk/libgnome-desktop/ChangeLog
trunk/libgnome-desktop/gnome-bg.c
Modified: trunk/libgnome-desktop/gnome-bg.c
==============================================================================
--- trunk/libgnome-desktop/gnome-bg.c (original)
+++ trunk/libgnome-desktop/gnome-bg.c Wed Feb 13 17:26:36 2008
@@ -238,8 +238,13 @@
gnome_bg_set_uri (GnomeBG *bg,
const char *uri)
{
+ char *free_me = NULL;
+
g_return_if_fail (bg != NULL);
+ if (g_path_is_absolute (uri))
+ uri = free_me = g_filename_to_uri (uri, NULL, NULL);
+
if (is_different (bg, uri)) {
char *tmp = g_strdup (uri);
@@ -253,6 +258,8 @@
emit_changed (bg);
}
+
+ g_free (free_me);
}
static void
@@ -1603,6 +1610,21 @@
return strtol (text, NULL, 0);
}
+static char *
+make_uri (char *file)
+{
+ if (g_path_is_absolute (file)) {
+ char *result = g_filename_to_uri (file, NULL, NULL);
+
+ g_free (file);
+
+ return result;
+ }
+ else {
+ return file;
+ }
+}
+
static void
handle_text (GMarkupParseContext *context,
const gchar *text,
@@ -1639,9 +1661,11 @@
else if (stack_is (parser, "file", "static", "background", NULL) ||
stack_is (parser, "from", "transition", "background", NULL)) {
slide->file1 = g_strdup (text);
+ slide->file1 = make_uri (slide->file1);
}
else if (stack_is (parser, "to", "transition", "background", NULL)) {
slide->file2 = g_strdup (text);
+ slide->file2 = make_uri (slide->file2);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]