Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:13.2:Update
thunar
thunar-support-gtk3-bookmarks.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File thunar-support-gtk3-bookmarks.patch of Package thunar
From 6a63d7bd8ff0d937cb30f112c3fd080a5a107053 Mon Sep 17 00:00:00 2001 From: Alistair Buxton <a.j.buxton@gmail.com> Date: Wed, 12 Mar 2014 20:20:05 +0000 Subject: Add support for the GTK 3 bookmarks file (bug #10627) The changes ensure that the config directory exists before attempting to write bookmarks. It falls back to the old location to support both GTK 2 and 3. Index: Thunar-1.6.3/thunar/thunar-gio-extensions.c =================================================================== --- Thunar-1.6.3.orig/thunar/thunar-gio-extensions.c +++ Thunar-1.6.3/thunar/thunar-gio-extensions.c @@ -77,7 +77,7 @@ thunar_g_file_new_for_bookmarks (void) gchar *filename; GFile *bookmarks; - filename = g_build_filename (xfce_get_homedir (), ".gtk-bookmarks", NULL); + filename = g_build_filename (g_get_user_config_dir (), "gtk-3.0", "bookmarks", NULL); bookmarks = g_file_new_for_path (filename); g_free (filename); Index: Thunar-1.6.3/thunar/thunar-shortcuts-model.c =================================================================== --- Thunar-1.6.3.orig/thunar/thunar-shortcuts-model.c +++ Thunar-1.6.3/thunar/thunar-shortcuts-model.c @@ -1364,6 +1364,7 @@ thunar_shortcuts_model_save (ThunarShort gchar *uri; GList *lp; GError *err = NULL; + GFile *parent = NULL; _thunar_return_if_fail (THUNAR_IS_SHORTCUTS_MODEL (model)); @@ -1389,6 +1390,22 @@ thunar_shortcuts_model_save (ThunarShort } } + /* create folder if it does not exist */ + parent = g_file_get_parent (model->bookmarks_file); + if (!g_file_make_directory_with_parents (parent, NULL, &err)) + { + if (g_error_matches (err, G_IO_ERROR, G_IO_ERROR_EXISTS)) + { + g_clear_error (&err); + } + else + { + g_warning ("Failed to create bookmarks folder: %s", err->message); + g_error_free (err); + } + } + g_clear_object (&parent); + /* write data to the disk */ bookmarks_path = g_file_get_path (model->bookmarks_file); if (!g_file_set_contents (bookmarks_path, contents->str, contents->len, &err)) Index: Thunar-1.6.3/thunar/thunar-util.c =================================================================== --- Thunar-1.6.3.orig/thunar/thunar-util.c +++ Thunar-1.6.3/thunar/thunar-util.c @@ -84,6 +84,15 @@ thunar_util_load_bookmarks (GFile /* append the GTK+ bookmarks (if any) */ fp = fopen (bookmarks_path, "r"); + g_free (bookmarks_path); + + if (G_UNLIKELY (fp == NULL)) + { + bookmarks_path = g_build_filename (g_get_home_dir (), ".gtk-bookmarks", NULL); + fp = fopen(bookmarks_path, "r"); + g_free(bookmarks_path); + } + if (G_LIKELY (fp != NULL)) { while (fgets (line, sizeof (line), fp) != NULL) @@ -119,7 +128,6 @@ thunar_util_load_bookmarks (GFile fclose (fp); } - g_free (bookmarks_path); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor