2.24.0.1
authorDan Winship <danw@src.gnome.org>
Wed, 24 Sep 2008 12:17:55 +0000 (12:17 +0000)
committerDan Winship <danw@src.gnome.org>
Wed, 24 Sep 2008 12:17:55 +0000 (12:17 +0000)
* configure.in: 2.24.0.1

* NEWS: Update

* libsoup/soup-session.c (redirect_handler):
* libsoup/soup-message.c (soup_message_new):
(soup_message_new_from_uri, soup_message_set_uri): Revert the
2008-08-25 change; it breaks the rhythmbox DAAP plugin. #553466.
To be revisited.

svn path=/trunk/; revision=1164

ChangeLog
NEWS
configure.in
libsoup/soup-message.c
libsoup/soup-session.c

index c8e1b22..f93bdee 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2008-09-23  Dan Winship  <danw@gnome.org>
+
+       * configure.in: 2.24.0.1
+
+       * NEWS: Update
+
+       * libsoup/soup-session.c (redirect_handler):
+       * libsoup/soup-message.c (soup_message_new):
+       (soup_message_new_from_uri, soup_message_set_uri): Revert the
+       2008-08-25 change; it breaks the rhythmbox DAAP plugin. #553466.
+       To be revisited.
+
 2008-09-22  Dan Winship  <danw@gnome.org>
 
        * configure.in: 2.24.0
diff --git a/NEWS b/NEWS
index bba5dfc..a9dedc8 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,8 @@
+Changes in libsoup from 2.23.92 to 2.24.0.1:
+
+       * Reverted part of the fix for #528882, which caused the DAAP
+          plugin in rhythmbox to crash. [#553466]
+
 Changes in libsoup from 2.23.91 to 2.23.92:
 
        * Fixed the handling of a 302 response to a HEAD request,
index f84d55c..bd0473f 100644 (file)
@@ -3,7 +3,7 @@ dnl *** Initialize automake and set version ***
 dnl *******************************************
 
 AC_PREREQ(2.53)
-AC_INIT(libsoup, 2.24.0)
+AC_INIT(libsoup, 2.24.0.1)
 AC_CONFIG_SRCDIR(libsoup.pc.in)
 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
 
index 4c6aebb..c5890ce 100644 (file)
@@ -554,7 +554,7 @@ get_property (GObject *object, guint prop_id,
  * Creates a new empty #SoupMessage, which will connect to @uri
  *
  * Return value: the new #SoupMessage (or %NULL if @uri could not
- * be parsed or is not a valid HTTP/HTTPS URI).
+ * be parsed).
  */
 SoupMessage *
 soup_message_new (const char *method, const char *uri_string)
@@ -568,6 +568,10 @@ soup_message_new (const char *method, const char *uri_string)
        uri = soup_uri_new (uri_string);
        if (!uri)
                return NULL;
+       if (!uri->host) {
+               soup_uri_free (uri);
+               return NULL;
+       }
 
        msg = soup_message_new_from_uri (method, uri);
        soup_uri_free (uri);
@@ -579,20 +583,13 @@ soup_message_new (const char *method, const char *uri_string)
  * @method: the HTTP method for the created request
  * @uri: the destination endpoint (as a #SoupURI)
  * 
- * Creates a new empty #SoupMessage, which will connect to @uri.
+ * Creates a new empty #SoupMessage, which will connect to @uri
  *
- * Return value: the new #SoupMessage (or %NULL if @uri is not a
- * valid HTTP/HTTPS URI)
+ * Return value: the new #SoupMessage
  */
 SoupMessage *
 soup_message_new_from_uri (const char *method, SoupURI *uri)
 {
-       g_return_val_if_fail (method != NULL, NULL);
-       g_return_val_if_fail (uri != NULL, NULL);
-
-       if (!SOUP_URI_VALID_FOR_HTTP (uri))
-               return NULL;
-
        return g_object_new (SOUP_TYPE_MESSAGE,
                             SOUP_MESSAGE_METHOD, method,
                             SOUP_MESSAGE_URI, uri,
@@ -1269,9 +1266,8 @@ soup_message_is_keepalive (SoupMessage *msg)
  * @msg: a #SoupMessage
  * @uri: the new #SoupURI
  *
- * Sets @msg's URI to @uri, which must be a valid HTTP/HTTPS URI (per
- * SOUP_URI_VALID_FOR_HTTP()). If @msg has already been sent and you
- * want to re-send it with the new URI, you need to call
+ * Sets @msg's URI to @uri. If @msg has already been sent and you want
+ * to re-send it with the new URI, you need to call
  * soup_session_requeue_message().
  **/
 void
@@ -1280,9 +1276,8 @@ soup_message_set_uri (SoupMessage *msg, SoupURI *uri)
        SoupMessagePrivate *priv;
 
        g_return_if_fail (SOUP_IS_MESSAGE (msg));
-       g_return_if_fail (SOUP_URI_VALID_FOR_HTTP (uri));
-
        priv = SOUP_MESSAGE_GET_PRIVATE (msg);
+
        if (priv->uri)
                soup_uri_free (priv->uri);
        priv->uri = soup_uri_copy (uri);
index 3d80205..9f23e89 100644 (file)
@@ -819,9 +819,7 @@ redirect_handler (SoupMessage *msg, gpointer user_data)
         * are lame, so we use soup_uri_new_with_base().
         */
        new_uri = soup_uri_new_with_base (soup_message_get_uri (msg), new_loc);
-       if (!SOUP_URI_VALID_FOR_HTTP (new_uri)) {
-               if (new_uri)
-                       soup_uri_free (new_uri);
+       if (!new_uri) {
                soup_message_set_status_full (msg,
                                              SOUP_STATUS_MALFORMED,
                                              "Invalid Redirect URL");