diff --git a/libsoup/soup-headers.c b/libsoup/soup-headers.c
index 465c4f7..f030626 100644
--- a/libsoup/soup-headers.c
+++ b/libsoup/soup-headers.c
@@ -361,6 +361,12 @@ soup_headers_parse_response (const char          *str,
 
 	g_return_val_if_fail (str && *str, FALSE);
 
+	/* Workaround that some broken servers can send extra line breaks */
+	while (*str == '\r' || *str == '\n') {
+		str++;
+		len--;
+	}
+
 	if (!soup_headers_parse (str, len, headers)) 
 		return FALSE;
 
