summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Hertzfeld <andy@src.gnome.org>2000-04-13 06:05:11 +0000
committerAndy Hertzfeld <andy@src.gnome.org>2000-04-13 06:05:11 +0000
commitd7f2206f66dbdd0e67144426ddfcc39ca14504fe (patch)
treef18d819630d382590ca1d2cb79b85c25d851c4bc
parent615bb68313176115f2797307254a025e2553fbd0 (diff)
downloadnautilus-d7f2206f66dbdd0e67144426ddfcc39ca14504fe.tar.gz
improved title for non-vfs uris, used Gene's routine to escape http
improved title for non-vfs uris, used Gene's routine to escape http parameters in service stuff, and finally weakened assert in nautilus directory to allow non-vfs uris to continue to work
-rw-r--r--ChangeLog-2000041410
-rw-r--r--components/services/startup/nautilus-service-startup-view.c21
-rw-r--r--libnautilus-extensions/nautilus-directory.c3
-rw-r--r--libnautilus-private/nautilus-directory.c3
-rw-r--r--libnautilus/nautilus-directory.c3
-rw-r--r--src/nautilus-window-manage-views.c7
-rw-r--r--src/ntl-window-msgs.c7
7 files changed, 44 insertions, 10 deletions
diff --git a/ChangeLog-20000414 b/ChangeLog-20000414
index c92a68c9b..8891dc504 100644
--- a/ChangeLog-20000414
+++ b/ChangeLog-20000414
@@ -1,5 +1,15 @@
2000-04-12 Andy Hertzfeld <andy@eazel.com>
+ * src/ntl-window-msgs.c:
+ improved the title of uri's not handled by gnome-vfs; instead of "Nautilus" use the text
+ after the colon, if there is any
+ * components/services/startup/nautilus-service-startup-view.c:
+ used Gene's escaping routine in gnome-vfs to escape http parameters as necessary
+ * libnautilus/nautilus-directory.c:
+ weakened assert in metadata callback to allow non-vfs uris to continue to work
+
+2000-04-12 Andy Hertzfeld <andy@eazel.com>
+
* icons/eazel/Makefile.am:
added more eazel theme open folder icons at different sizes
* icons/eazel/i-directory-accept.png:
diff --git a/components/services/startup/nautilus-service-startup-view.c b/components/services/startup/nautilus-service-startup-view.c
index 721538f05..7ead4bf3c 100644
--- a/components/services/startup/nautilus-service-startup-view.c
+++ b/components/services/startup/nautilus-service-startup-view.c
@@ -33,6 +33,7 @@
#include <ghttp.h>
#include <unistd.h>
#include <gnome-xml/tree.h>
+#include <libgnomevfs/gnome-vfs-utils.h>
#include <libnautilus/nautilus-background.h>
#include <libnautilus/nautilus-gtk-macros.h>
#include <libnautilus/nautilus-glib-extensions.h>
@@ -185,6 +186,7 @@ gather_config_button_cb (GtkWidget *button, NautilusServicesContentView *view)
FILE* config_file;
gchar buffer[256], host_name[512];
gchar *config_file_name, *config_string, *uri, *response_str, *cookie_str;
+ gchar *encoded_token, *encoded_host_name;
GString* config_data;
xmlDocPtr config_doc;
ghttp_request *request;
@@ -223,12 +225,16 @@ gather_config_button_cb (GtkWidget *button, NautilusServicesContentView *view)
update_now();
/* send the config file to the server via HTTP */
- /* FIXME: need to url-encode the arguments here */
uri = g_strdup_printf("http://%s/profile/set.pl", SERVICE_DOMAIN_NAME);
+ encoded_token = gnome_vfs_escape_string(view->details->auth_token, GNOME_VFS_URI_ENCODING_XALPHAS);
+ encoded_host_name = gnome_vfs_escape_string(host_name, GNOME_VFS_URI_ENCODING_XALPHAS);
+
gethostname(&host_name[0], 511);
- cookie_str = g_strdup_printf("token=%s; computer=%s", view->details->auth_token, host_name);
+ cookie_str = g_strdup_printf("token=%s; computer=%s", encoded_token, encoded_host_name);
request = make_http_post_request(uri, config_string, cookie_str);
+ g_free(encoded_token);
+ g_free(encoded_host_name);
g_free(cookie_str);
response_str = ghttp_get_body(request);
@@ -257,6 +263,7 @@ register_button_cb (GtkWidget *button, NautilusServicesContentView *view)
{
ghttp_request *request;
gchar *response_str, *body, *uri;
+ gchar *encoded_email, *encoded_password;
gchar *email = gtk_entry_get_text(GTK_ENTRY(view->details->account_name));
gchar *password = gtk_entry_get_text(GTK_ENTRY(view->details->account_password));
gchar *confirm = gtk_entry_get_text(GTK_ENTRY(view->details->confirm_password));
@@ -284,10 +291,14 @@ register_button_cb (GtkWidget *button, NautilusServicesContentView *view)
/* hide the error text and give feedback in the status area during the request */
gtk_widget_hide(view->details->feedback_text);
- /* FIXME: need to url-encode the arguments here */
- body = g_strdup_printf("email=%s&pwd=%s", email, password);
+ encoded_email = gnome_vfs_escape_string(email, GNOME_VFS_URI_ENCODING_XALPHAS);
+ encoded_password = gnome_vfs_escape_string(password, GNOME_VFS_URI_ENCODING_XALPHAS);
+
+ body = g_strdup_printf("email=%s&pwd=%s", encoded_email, encoded_password);
uri = g_strdup_printf("http://%s/member/new.pl", SERVICE_DOMAIN_NAME);
-
+ g_free(encoded_email);
+ g_free(encoded_password);
+
request = make_http_post_request(uri, body, NULL);
response_str = ghttp_get_body(request);
diff --git a/libnautilus-extensions/nautilus-directory.c b/libnautilus-extensions/nautilus-directory.c
index 0605dcb0f..d125adc5e 100644
--- a/libnautilus-extensions/nautilus-directory.c
+++ b/libnautilus-extensions/nautilus-directory.c
@@ -1456,7 +1456,8 @@ nautilus_directory_cancel_callback (NautilusDirectory *directory,
return;
}
- g_return_if_fail (NAUTILUS_IS_DIRECTORY (directory));
+ /* NULL is OK here for non-vfs protocols */
+ g_return_if_fail (!directory || NAUTILUS_IS_DIRECTORY (directory));
old_callback.file = NULL;
old_callback.callback.directory = callback;
diff --git a/libnautilus-private/nautilus-directory.c b/libnautilus-private/nautilus-directory.c
index 0605dcb0f..d125adc5e 100644
--- a/libnautilus-private/nautilus-directory.c
+++ b/libnautilus-private/nautilus-directory.c
@@ -1456,7 +1456,8 @@ nautilus_directory_cancel_callback (NautilusDirectory *directory,
return;
}
- g_return_if_fail (NAUTILUS_IS_DIRECTORY (directory));
+ /* NULL is OK here for non-vfs protocols */
+ g_return_if_fail (!directory || NAUTILUS_IS_DIRECTORY (directory));
old_callback.file = NULL;
old_callback.callback.directory = callback;
diff --git a/libnautilus/nautilus-directory.c b/libnautilus/nautilus-directory.c
index 0605dcb0f..d125adc5e 100644
--- a/libnautilus/nautilus-directory.c
+++ b/libnautilus/nautilus-directory.c
@@ -1456,7 +1456,8 @@ nautilus_directory_cancel_callback (NautilusDirectory *directory,
return;
}
- g_return_if_fail (NAUTILUS_IS_DIRECTORY (directory));
+ /* NULL is OK here for non-vfs protocols */
+ g_return_if_fail (!directory || NAUTILUS_IS_DIRECTORY (directory));
old_callback.file = NULL;
old_callback.callback.directory = callback;
diff --git a/src/nautilus-window-manage-views.c b/src/nautilus-window-manage-views.c
index 776ecfb0f..59146379a 100644
--- a/src/nautilus-window-manage-views.c
+++ b/src/nautilus-window-manage-views.c
@@ -200,7 +200,12 @@ compute_default_title (const char *text_uri)
g_assert (short_name != NULL);
return short_name;
- }
+ } else {
+ gchar *colon_pos = strchr(text_uri, ':');
+ if (colon_pos && colon_pos[1])
+ return g_strdup(colon_pos + 1);
+ }
+
}
return g_strdup(_("Nautilus"));
diff --git a/src/ntl-window-msgs.c b/src/ntl-window-msgs.c
index 776ecfb0f..59146379a 100644
--- a/src/ntl-window-msgs.c
+++ b/src/ntl-window-msgs.c
@@ -200,7 +200,12 @@ compute_default_title (const char *text_uri)
g_assert (short_name != NULL);
return short_name;
- }
+ } else {
+ gchar *colon_pos = strchr(text_uri, ':');
+ if (colon_pos && colon_pos[1])
+ return g_strdup(colon_pos + 1);
+ }
+
}
return g_strdup(_("Nautilus"));