[rygel] renderer: Don't always fall back



commit cc32943c39e2643c9365842246b97a5f556aa635
Author: Jens Georg <jensg openismus com>
Date:   Wed May 8 19:54:34 2013 +0200

    renderer: Don't always fall back
    
    Only do the GET request if the peer does not seem to understand HEAD.
    Otherwise we'd probably do unnecessary requests.

 src/librygel-renderer/rygel-av-transport.vala |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/src/librygel-renderer/rygel-av-transport.vala b/src/librygel-renderer/rygel-av-transport.vala
index b6d970f..ccf93a9 100644
--- a/src/librygel-renderer/rygel-av-transport.vala
+++ b/src/librygel-renderer/rygel-av-transport.vala
@@ -247,7 +247,10 @@ internal class Rygel.AVTransport : Service {
             message.request_headers.append ("getContentFeatures.dlna.org",
                                             "1");
             message.finished.connect ((msg) => {
-                if (msg.status_code != KnownStatusCode.OK &&
+                if ((msg.status_code == KnownStatusCode.MALFORMED ||
+                     msg.status_code == KnownStatusCode.BAD_REQUEST ||
+                     msg.status_code == KnownStatusCode.METHOD_NOT_ALLOWED ||
+                     msg.status_code == KnownStatusCode.NOT_IMPLEMENTED) &&
                     msg.method == "HEAD") {
                     debug ("Peer does not support HEAD, trying GET");
                     msg.method = "GET";


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]