1 --- gnome-desktop-2.21.91/libgnome-desktop/gnome-bg.c 2008-02-11 19:35:11.000000000 +0100
2 +++ trunk/libgnome-desktop/gnome-bg.c 2008-02-15 15:09:57.000000000 +0100
4 gnome_bg_set_uri (GnomeBG *bg,
7 + char *free_me = NULL;
9 g_return_if_fail (bg != NULL);
11 + if (g_path_is_absolute (uri))
12 + uri = free_me = g_filename_to_uri (uri, NULL, NULL);
14 if (is_different (bg, uri)) {
15 char *tmp = g_strdup (uri);
26 @@ -1076,10 +1083,11 @@
27 file = g_file_new_for_uri (uri);
28 info = g_file_query_info (file, G_FILE_ATTRIBUTE_TIME_MODIFIED,
29 G_FILE_QUERY_INFO_NONE, NULL, NULL);
32 mtime = g_file_info_get_attribute_uint64 (info,
33 G_FILE_ATTRIBUTE_TIME_MODIFIED);
34 - g_object_unref (info);
35 + g_object_unref (info);
37 g_object_unref (file);
40 @@ -1602,6 +1610,21 @@
41 return strtol (text, NULL, 0);
45 +make_uri (char *file)
47 + if (g_path_is_absolute (file)) {
48 + char *result = g_filename_to_uri (file, NULL, NULL);
60 handle_text (GMarkupParseContext *context,
62 @@ -1638,9 +1661,11 @@
63 else if (stack_is (parser, "file", "static", "background", NULL) ||
64 stack_is (parser, "from", "transition", "background", NULL)) {
65 slide->file1 = g_strdup (text);
66 + slide->file1 = make_uri (slide->file1);
68 else if (stack_is (parser, "to", "transition", "background", NULL)) {
69 slide->file2 = g_strdup (text);
70 + slide->file2 = make_uri (slide->file2);