diff options
author | Andy Hertzfeld <andy@src.gnome.org> | 2000-04-13 06:05:11 +0000 |
---|---|---|
committer | Andy Hertzfeld <andy@src.gnome.org> | 2000-04-13 06:05:11 +0000 |
commit | d7f2206f66dbdd0e67144426ddfcc39ca14504fe (patch) | |
tree | f18d819630d382590ca1d2cb79b85c25d851c4bc | |
parent | 615bb68313176115f2797307254a025e2553fbd0 (diff) | |
download | nautilus-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-20000414 | 10 | ||||
-rw-r--r-- | components/services/startup/nautilus-service-startup-view.c | 21 | ||||
-rw-r--r-- | libnautilus-extensions/nautilus-directory.c | 3 | ||||
-rw-r--r-- | libnautilus-private/nautilus-directory.c | 3 | ||||
-rw-r--r-- | libnautilus/nautilus-directory.c | 3 | ||||
-rw-r--r-- | src/nautilus-window-manage-views.c | 7 | ||||
-rw-r--r-- | src/ntl-window-msgs.c | 7 |
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")); |