Code

Improve pack list response handling
authorNick Hengeveld <nickh@reactrix.com>
Fri, 18 Nov 2005 19:03:11 +0000 (11:03 -0800)
committerJunio C Hamano <junkio@cox.net>
Sun, 20 Nov 2005 04:17:24 +0000 (20:17 -0800)
Better response handling for pack list requests - a 404 means we do have
the list but it happens to be empty.

Signed-off-by: Nick Hengeveld <nickh@reactrix.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
http-fetch.c

index 53a7dbf40c0e0993da2994cb1216e6b8a0b7fc66..435317342be0d31088f5aae5b337e090b40199b5 100644 (file)
@@ -637,10 +637,18 @@ static int fetch_indices(struct alt_base *repo)
        if (start_active_slot(slot)) {
                run_active_slot(slot);
                if (slot->curl_result != CURLE_OK) {
-                       free(buffer.buffer);
-                       return error("%s", curl_errorstr);
+                       if (slot->http_code == 404) {
+                               repo->got_indices = 1;
+                               free(buffer.buffer);
+                               return 0;
+                       } else {
+                               repo->got_indices = 0;
+                               free(buffer.buffer);
+                               return error("%s", curl_errorstr);
+                       }
                }
        } else {
+               repo->got_indices = 0;
                free(buffer.buffer);
                return error("Unable to start request");
        }