SOUP_URI_VALID_FOR_HTTP: update to check uri->path too
authorDan Winship <danw@gnome.org>
Sat, 21 Nov 2009 14:32:21 +0000 (09:32 -0500)
committerDan Winship <danw@gnome.org>
Sat, 21 Nov 2009 14:32:21 +0000 (09:32 -0500)
libsoup/soup-uri.c
libsoup/soup-uri.h

index 4f8610b..8cb49fd 100644 (file)
@@ -350,12 +350,12 @@ soup_uri_new_with_base (SoupURI *base, const char *uri_string)
        /* HTTP-specific stuff */
        if (uri->scheme == SOUP_URI_SCHEME_HTTP ||
            uri->scheme == SOUP_URI_SCHEME_HTTPS) {
+               if (!uri->path)
+                       uri->path = g_strdup ("/");
                if (!SOUP_URI_VALID_FOR_HTTP (uri)) {
                        soup_uri_free (uri);
                        return NULL;
                }
-               if (!uri->path)
-                       uri->path = g_strdup ("/");
        }
 
        if (!uri->port)
index b540e40..21e465d 100644 (file)
@@ -84,7 +84,7 @@ guint     soup_uri_host_hash             (gconstpointer key);
 gboolean  soup_uri_host_equal            (gconstpointer v1,
                                          gconstpointer v2);
 
-#define   SOUP_URI_VALID_FOR_HTTP(uri) ((uri) && ((uri)->scheme == SOUP_URI_SCHEME_HTTP || (uri)->scheme == SOUP_URI_SCHEME_HTTPS) && (uri)->host)
+#define   SOUP_URI_VALID_FOR_HTTP(uri) ((uri) && ((uri)->scheme == SOUP_URI_SCHEME_HTTP || (uri)->scheme == SOUP_URI_SCHEME_HTTPS) && (uri)->host && (uri)->path)
 
 G_END_DECLS