diff --git a/WebCore/platform/network/soup/ResourceHandleSoup.cpp b/WebCore/platform/network/soup/ResourceHandleSoup.cpp
index 2177bd2..85ca8c5 100644
--- a/WebCore/platform/network/soup/ResourceHandleSoup.cpp
+++ b/WebCore/platform/network/soup/ResourceHandleSoup.cpp
@@ -541,12 +541,6 @@ static bool startHttp(ResourceHandle* handle)
     // balanced by a deref() in finishedCallback, which should always run
     handle->ref();
 
-    // FIXME: For now, we cannot accept content encoded in anything
-    // other than identity, so force servers to do it our way. When
-    // libsoup gets proper Content-Encoding support we will want to
-    // use it here instead.
-    soup_message_headers_replace(d->m_msg->request_headers, "Accept-Encoding", "identity");
-
     // Balanced in ResourceHandleInternal's destructor; we need to
     // keep our own ref, because after queueing the message, the
     // session owns the initial reference.
diff --git a/WebKit/gtk/webkit/webkitprivate.cpp b/WebKit/gtk/webkit/webkitprivate.cpp
index 4425dcd..975708e 100644
--- a/WebKit/gtk/webkit/webkitprivate.cpp
+++ b/WebKit/gtk/webkit/webkitprivate.cpp
@@ -249,6 +249,8 @@ void webkit_init()
     SoupSessionFeature* sniffer = static_cast<SoupSessionFeature*>(g_object_new(SOUP_TYPE_CONTENT_SNIFFER, NULL));
     soup_session_add_feature(session, sniffer);
     g_object_unref(sniffer);
+
+    soup_session_add_feature_by_type(session, SOUP_TYPE_CONTENT_DECODER);
 }
 
 void webkit_white_list_access_from_origin(const gchar* sourceOrigin, const gchar* destinationProtocol, const gchar* destinationHost, bool allowDestinationSubdomains)
