nautilus-sendto r382 - in trunk: . src
- From: hadess svn gnome org
- To: svn-commits-list gnome org
- Subject: nautilus-sendto r382 - in trunk: . src
- Date: Wed, 7 Jan 2009 14:40:49 +0000 (UTC)
Author: hadess
Date: Wed Jan 7 14:40:49 2009
New Revision: 382
URL: http://svn.gnome.org/viewvc/nautilus-sendto?rev=382&view=rev
Log:
2009-01-07 Bastien Nocera <hadess hadess net>
* src/nautilus-sendto-command.c (nautilus_sendto_init):
When going through the filenames from the command-line,
get FUSE filenames for the files when possible, so
we can send files from remote locations (Closes: #543965)
Modified:
trunk/ChangeLog
trunk/src/nautilus-sendto-command.c
Modified: trunk/src/nautilus-sendto-command.c
==============================================================================
--- trunk/src/nautilus-sendto-command.c (original)
+++ trunk/src/nautilus-sendto-command.c Wed Jan 7 14:40:49 2009
@@ -713,51 +713,28 @@
}
for (i = 0; filenames != NULL && filenames[i] != NULL; i++) {
- const char *filename;
- char *path;
+ GFile *file;
+ char *filename, *escaped, *uri;
+
+ file = g_file_new_for_commandline_arg (filenames[i]);
+ filename = g_file_get_path (file);
+ if (filename == NULL)
+ continue;
+
+ if (g_file_test (filename, G_FILE_TEST_IS_DIR) != FALSE)
+ force_user_to_compress = TRUE;
+
+ uri = g_filename_to_uri (filename, NULL, NULL);
+ escaped = escape_ampersands (uri);
+ g_free (uri);
+
+ if (escaped == NULL)
+ file_list = g_list_prepend (file_list, filename);
+ else {
+ g_free (filename);
+ file_list = g_list_prepend (file_list, escaped);
+ }
- filename = filenames[i];
-
- if (g_str_has_prefix (filename, "file://")) {
- char *escaped;
-
- /* Make sure URIs don't contain ampersands */
- escaped = escape_ampersands (filename);
- if (escaped == NULL)
- file_list = g_list_prepend (file_list,
- g_strdup (filename));
- else
- file_list = g_list_prepend (file_list, escaped);
- path = g_filename_from_uri (filename, NULL, NULL);
- if (path != NULL
- && g_file_test (path, G_FILE_TEST_IS_DIR)) {
- force_user_to_compress = TRUE;
- }
- g_free (path);
- } else {
- char *uri, *escaped;
-
- if (filename[0] != G_DIR_SEPARATOR) {
- path = g_build_filename (default_url,
- filename, NULL);
- } else {
- path = g_strdup (filename);
- }
-
- uri = g_filename_to_uri (path, NULL, NULL);
- escaped = escape_ampersands (uri);
- if (escaped) {
- file_list = g_list_prepend (file_list, escaped);
- g_free (uri);
- } else {
- file_list = g_list_prepend (file_list, uri);
- }
-
- if (g_file_test (path, G_FILE_TEST_IS_DIR))
- force_user_to_compress = TRUE;
-
- g_free (path);
- }
}
if (file_list == NULL) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]