From: Jose Dapena Paz Date: Tue, 13 Jan 2009 11:34:53 +0000 (+0000) Subject: Use GnomeVFS URI for calculating folder permissions (fixes NB#97741) X-Git-Tag: git_migration_finished~825 X-Git-Url: http://git.maemo.org/git/?p=modest;a=commitdiff_plain;h=72a12b5db29a1db7b730891950fb9208d0323992 Use GnomeVFS URI for calculating folder permissions (fixes NB#97741) pmo-trunk-r7114 --- diff --git a/src/modest-utils.c b/src/modest-utils.c index 415ca73..6a912fb 100644 --- a/src/modest-utils.c +++ b/src/modest-utils.c @@ -71,19 +71,28 @@ modest_utils_folder_writable (const gchar *filename) if (g_strncasecmp (filename, "obex", 4) != 0) { GnomeVFSFileInfo *folder_info; - gchar *folder; GnomeVFSResult result; + GnomeVFSURI *uri; + GnomeVFSURI *folder_uri; - folder = g_path_get_dirname (filename); - folder_info = gnome_vfs_file_info_new (); - result = gnome_vfs_get_file_info (folder, folder_info, - GNOME_VFS_FILE_INFO_GET_ACCESS_RIGHTS); - g_free (folder); + uri = gnome_vfs_uri_new (filename); + folder_uri = gnome_vfs_uri_get_parent (uri); + + if (folder_uri != NULL) { + folder_info = gnome_vfs_file_info_new (); + result = gnome_vfs_get_file_info_uri (folder_uri, folder_info, + GNOME_VFS_FILE_INFO_GET_ACCESS_RIGHTS); + gnome_vfs_uri_unref (folder_uri); + } + gnome_vfs_uri_unref (uri); + + if (folder_uri == NULL) + return FALSE; if ((result != GNOME_VFS_OK) || (!((folder_info->permissions & GNOME_VFS_PERM_ACCESS_WRITABLE) || (folder_info->permissions & GNOME_VFS_PERM_USER_WRITE)))) { - + gnome_vfs_file_info_unref (folder_info); return FALSE; }